web-dev-qa-db-fra.com

Modification du titre du document uniquement sur un modèle de page personnalisé

Salut quelqu'un peut aider avec le ci-dessous, s'il vous plaît?

Je veux pouvoir modifier le contenu de ma balise HTML <title> uniquement; il est donc nécessaire d'écrire une instruction if/else.

Je me suis un peu embrouillé car mon PHP n'est pas génial ... mais en gros, quelque chose comme le ci-dessous mais combiné ...

<?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 } ?>

Merci :)

1
V Neal

Je pense que vous voudrez utiliser le filtre wp_title. Ajoutez ce qui suit à functions.php:

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' );

N'effectuez aucune autre modification, y compris dans header.php.

4
Chip Bennett

Ajoutez ce code au fichier your-page-template.php avant la fonction get_header():

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