Rimuovere il nome del sito dal tag <title>
I miei attuali tag <title>
sono così:
Titolo del blog | Nome del sito
Come posso rimuovere "Nome del sito" in modo che i tag <title>
siano così:
Titolo del blog
Tranne, ovviamente, nella homepage, dove il tag <title>
dovrebbe essere:
Nome del sito
Per favore considera che sono un completo principiante di WordPress.
Modifica: Ecco il mio attuale tag <title>
da header.php
:
<title>
<?php
if ( defined( 'WPSEO_VERSION' ) ) {
// WordPress SEO è attivo
wp_title();
} else {
// WordPress SEO non è attivo
wp_title( '|', true, 'right' );
}
?>
</title>

La cosa migliore (e più semplice) da fare è utilizzare il filtro wp_title
.
Per prima cosa, pulisci la tua chiamata a <?php wp_title(); ?>
nel tuo template. Sostituisci ciò che hai con questo:
wp_title( '|', true, 'right' );
Quindi, in functions.php
(o in un child Theme functions.php
; valgono le solite avvertenze), aggiungi il seguente codice:
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' );
Questo filtro sovrascriverà completamente l'output di $title
nei contesti a pagina singola. (La condizione effettiva è presa direttamente dal core, dalla definizione stessa della funzione wp_title()
.)
L'ultima volta che ho verificato, WordPress non mostra effettivamente il titolo del sito da nessuna parte in wp_title()
; quindi, se lo vedi, qualcosa lo sta aggiungendo (forse il tuo tema?). Tuttavia, se vuoi mostrarlo, scrivi semplicemente una condizione complementare nel filtro sopra; ad esempio:
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' );

Il mio tema genitore stava aggiungendo il nome del blog al titolo. Sono riuscito a utilizzare questa soluzione per correggerlo semplicemente aumentando il parametro di priorità nella chiamata add_filter. Questo assicura che il nostro nuovo filtro venga eseguito dopo il filtro del tema genitore. Ho impostato la priorità a 100: add_filter('wp_title', 'wpse95147_filter_wp_title', 100);

Aggiungi questa riga nel tuo file header.php
<title><?php wp_title();?></title>
Aggiungi il codice seguente nel file functions.php del tema
function your_wp_title( $title, $sep ) {
global $paged, $page;
if(is_front_page()){
$title = get_bloginfo( 'name' );
return $title;
} else {
if ( is_feed() )
// Aggiungi il nome del sito
return $title;
}
}
add_filter( 'wp_title', 'your_wp_title', 10, 2 );
Riferimento:http://codex.wordpress.org/Plugin_API/Filter_Reference/wp_title

Nel mio file template header.php ho sostituito la riga del titolo con questo
<title><?php is_front_page() ? woo_title() : wp_title( '' ); ?></title>
Nel mio caso sto utilizzando un template woothemes, ecco perché quel woo_title() in output.
Qui, puoi verificare in una singola riga se sei nella pagina home, se vero, puoi permettere la visualizzazione del titolo del blog/sito, se falso mostra il titolo senza il nome del sito, verrà visualizzato solo il titolo del post o della pagina.

Stavo riscontrando questo problema con gli articoli, quindi ho cercato su internet e ho creato un piccolo plugin che rimuove il nome del blog dai post
########### inizio rimozione titolo blog dai post #######
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' );
########### fine rimozione titolo blog dai post #######
Per favore nota questo codice
if ( is_single() )
Si applica solo al titolo dei post Puoi aggiungere più condizioni come
if ( is_single() || is_archive() )
Qui ho aggiunto anche le pagine archivio Spero tu abbia capito il concetto generale di come funziona

<?php wp_title(false); ?>
Prova questo e leggi di più qui
|
indica una barra verticale come separatore. L'argomento true sta per $display, se visualizzare il titolo o meno. Il terzo argomento è la posizione dove mettere il separatore.
