web-dev-qa-db-de.com

Ändern des Dokumenttitels nur in einer benutzerdefinierten Seitenvorlage

Hallo, kann mir bitte jemand weiterhelfen?

Ich möchte nur den Inhalt meines HTML-Tags <title> ändern können und muss daher eine if/else-Anweisung schreiben.

Ich werde ein bisschen durcheinander, da mein PHP nicht großartig ist ... aber im Grunde genommen etwas in der Art des Folgenden, aber kombiniert ...

<?php if ( ! is_page_template('boatDetails.php') ) { ?>
<title><?php bloginfo('name'); ?><?php wp_title('|'); ?></title>
<?php } ?>
<?php if ( is_page_template('boatDetails.php') ) { ?>
<title>I'm the boat details page</title>
<?php } ?>

Vielen Dank :)

1
V Neal

Ich denke, Sie werden den wp_title-Filter verwenden wollen. Fügen Sie functions.php Folgendes hinzu:

function wpse62415_filter_wp_title( $title ) {
    // Return a custom document title for
    // the boat details custom page template
    if ( is_page_template( 'boatDetails.php' ) ) {
        return 'I\'m the boat details page';
    }
    // Otherwise, don't modify the document title
    return $title;
}
add_filter( 'wp_title', 'wpse62415_filter_wp_title' );

Nehmen Sie nirgendwo andere Änderungen vor, auch nicht in header.php.

4
Chip Bennett

Fügen Sie diesen Code zur your-page-template.php-Datei hinzu, bevor get_header() funktioniert:

function my_page_title() {
    return 'Your value is '; // add dynamic content to this title (if needed)
}
add_action( 'pre_get_document_title', 'my_page_title' );
1
Arthur Shlain