Mes tags <title>
actuels sont comme ceci:
Titre de l'article de blog | Nom du site
Comment puis-je supprimer "Nom du site" afin que les balises <title>
soit comme ceci:
Titre de l'article de blog
Sauf, bien sûr, sur la page de couverture, où la balise <title>
devrait être:
Nom du site
S'il vous plaît prendre en compte que je suis un débutant complet Wordpress.
Edit: Voici ma balise <title>
actuelle de header.php
:
<title>
<?php
if ( defined( 'WPSEO_VERSION' ) ) {
// WordPress SEO is activated
wp_title();
} else {
// WordPress SEO is not activated
wp_title( '|', true, 'right' );
}
?>
</title>
La meilleure (et la plus simple) chose à faire est d’utiliser le wp_title
filter .
Commencez par nettoyer votre appel à <?php wp_title(); ?>
dans votre modèle. Remplacez ce que vous avez par ceci:
wp_title( '|', true, 'right' );
Ensuite, dans functions.php
(ou dans un thème enfant functions.php
; des mises en garde normales s'appliquent), ajoutez ce qui suit:
function wpse95147_filter_wp_title( $title ) {
if ( is_single() || ( is_home() && !is_front_page() ) || ( is_page() && !is_front_page() ) ) {
$title = single_post_title( '', false );
}
return $title;
}
add_filter( 'wp_title', 'wpse95147_filter_wp_title' );
Ce filtre écrasera complètement la sortie $title
dans des contextes d'une seule page. ( Le conditionnel réel provient directement de core , à partir de la définition de fonction wp_title()
elle-même.)
La dernière fois que j'ai coché, WordPress n'indique pas le titre du site dans wp_title()
; donc si vous voyez cela, quelque chose l'ajoute (peut-être votre thème?). Néanmoins, si vous voulez le sortir, écrivez simplement une condition complémentaire dans le filtre ci-dessus; par exemple.:
function wpse95147_filter_wp_title( $title ) {
if ( is_single() || ( is_home() && !is_front_page() ) || ( is_page() && !is_front_page() ) ) {
$title = single_post_title( '', false );
}
if ( is_front_page() && ! is_page() ) {
$title = esc_attr( get_bloginfo( 'name' ) );
}
return $title;
}
add_filter( 'wp_title', 'wpse95147_filter_wp_title' );
Ajouter cette ligne dans votre fichier header.php
<title><?php wp_title();?></title>
Ajouter le code ci-dessous dans le fichier functions.php du thème
function your_wp_title( $title, $sep ) {
global $paged, $page;
if(is_front_page()){
$title = get_bloginfo( 'name' );
return $title;
} else {
if ( is_feed() )
// Add the site name.
return $title;
}
}
add_filter( 'wp_title', 'your_wp_title', 10, 2 );
Référence: http://codex.wordpress.org/Plugin_API/Filter_Reference/wp_title
Sur mon fichier template header.php, j'ai remplacé la ligne de titre par ceci
<title><?php is_front_page() ? woo_title() : wp_title( '' ); ?></title>
Dans mon cas, j'utilise un modèle woothemes, c'est pourquoi cette sortie woo_title ().
Ici, vous pouvez cocher sur une seule ligne si vous êtes sur la page d’accueil. Si la valeur est true, vous pouvez autoriser l’affichage du titre du blog/site. Si false, indiquez le titre sans le nom du site.
j'avais ce problème avec les articles, j'ai donc cherché dans Internet et j'ai créé un petit plugin qui supprime le nom du blog des articles.
########### start remove blog title from posts #######
function wp_abdul0201_wp_title( $title ) {
if ( is_single() ) {
$title = single_post_title( '', false );
}
return $title;
}
add_filter( 'pre_get_document_title', 'wp_abdul0201_wp_title' );
########### end remove blog title from posts #######
s'il vous plaît notince ce code
if ( is_single() )
il ne s'applique qu'aux titres de poste, vous pouvez ajouter plus de codition comme
if ( is_single() || is_archive )
ici, j'ai ajouté des pages d'archives aussi, j'espère que vous avez une idée générale de son fonctionnement