Risolvere tag title duplicati

wordpress_miglioramenti

Per chi gestisce un sito, in particolare se non è uno specialista, è sempre utile avere dei suggerimenti per la corretta manutenzione e per migliorare il posizionamento sui motori di ricerca. In questo caso Google mette a disposizione dei webmaster un pratico strumento, il Webmasters tool.

Tra le pagine che guidano all’ottimizzazione per i motori di ricerca, c’è quella dedicata ai miglioramenti HTML. Sebbene in genere i siti costruiti con wordpress siano ben strutturati, non sempre tutto il codice produce risultati efficaci, in particolare i tag title della paginazione. Ogni sito wordpress che si sviluppi su più pagine di blog infatti di default replica nella head di ognuna di esse il semplice[nome del sito] | [motto del sito]. Se questo si ripete invariato più di una volta, Google (e altri motori di ricerca) saranno costretti a indicizzarne i differenti contenuti sotto lo stesso tag, impoverendo i risultati della ricerca.

Per ovviare a questa lacuna è possibile far sì che il sito numeri i tag title includento di pagina, una modifica piccola ma che basta a differenziare la riga di html. Per farlo bisogna modificare il file header.php, accessibile dalla bacheca di wordpress: aspetto -> editor -> header.php

Come suggerito dal supporto WP, bisogna trovare la riga:

<title><?php wp_title(”); ?></title>

e sotituirla con:

<title><?php wp_title(”); if ( $paged >= 2 || $page >= 2 ) echo ‘ | ‘ . sprintf( __( ‘Page %s’), max( $paged, $page ) ); ?></title>

e infine salvare. Il risultato dovrebbe essere del tipo: [nome del sito] | [motto del sito] | Page (numero)
Se si sta usando un tema child, bisogna invece prima ricopiare per intero il file header.php nella cartella del child, e poi effettuare la modifica. Questo però non può essere fatto dalla bacheca del sito, ma bisogna accedere via ftp o da pannello di controllo.

[Update: anche con questo hack il problema rimane relativamente alle pagine blog/ e blog/page/1 che peraltro in questo caso hanno identico contenuto. Si può risolvere del tutto rimuovendo anche il riferimento al >=2, e scrivere in questo modo:

<title><?php wp_title(”); echo ‘ | ‘ . sprintf( __( ‘Page %s’), max( $paged, $page ) ); ?></title>

così che anche alla pagina 1 verrà mostrato il numero di pagina.]