Back to home page
Il Jester
My little dream is in developing

Creare un file Robots.txt ottimizzato per WordPress

robot-916284_960_720L’indicizzazione dei siti web, e in particolare dei blog su piattaforma WordPress, spesso è lasciata al caso. Soprattutto quando si è inesperti e si inizia a bloggare, l’aspetto SEO (Search Engine Optimization) è un argomento ignorato se non poco conosciuto. Si parte dal presupposto che il blog abbia già tutti gli strumenti per piazzarsi ottimamente sui motori di ricerca senza che si debba fare nulla in proposito.

Naturalmente non è così. Se è pur vero che con il tempo – soprattutto se il blog lo si aggiorna frequentemente – esso comunque raggiunge i suoi risultati, non è detto che questi siano i suoi risultati ottimali.

Proprio per dare una mano nella indicizzazione ed evitare soprattutto penalizzazioni (Google, ma anche gli altri motori di ricerca, presta particolare attenzione ai contenuti duplicati), è necessario fra le altre cose, ottimizzare il robots.txt.

Una prima cosa da fare, quando si crea un robots.txt, è richiamare i robots che potranno accedere alle vostre directory:

User-agent: *

Dopo di che, è necessario bloccare le directory del core di WordPress (o comunque del vostro sito), la cui funzione è far funzionare lo script, e non certo di diffondere i contenuti del vostro blog.

Disallow: /wp-
Disallow: /cgi-bin/
Disallow: /wp-admin/
Disallow: /wp-includes/
Disallow: /wp-content/

Tuttavia, sappiamo benissimo che la directory wp-content contiene anche i file immagine e gli altri allegati ai post. Solitamente questi documenti si trovano nella sub cartella uploads. Perciò sarà necessario permettere al robot di indicizzare almeno quella cartella:

Allow: /wp-content/uploads/

Chiaramente, se avete modificato la directory di salvataggio degli allegati, magari chiamandola “allegati” o con altro nome, dovrete sostituire “uploads” con il nome assegnato alla directory in cui salvate gli allegati.

A questo punto dobbiamo bloccare i potenziali contenuti duplicati provenienti generati per ogni singolo post. Infatti capita spesso che i link dei post vengano duplicati, poiché a ogni commento o trackbak o feed il sistema genera un link univoco che però non corrisponde a un titolo univoco o a una meta descrizione univoca. Google, negli strumenti del Webmaster, segnala questo errore come metadescrizioni o titoli duplicati che possono generare penalizzazioni a livello di indicizzazione. Per evitarle, non permettiamo ai robots di accedere a questi link e vietiamo loro di indicizzarli o seguirli:

Disallow: /trackback/
Disallow: /feed/
Disallow: /comments/
Disallow: */trackback/
Disallow: */feed/
Disallow: */comments/

Si potrebbe persino bloccare le pagine-post generate con la paginazione dei commenti (e sempre che abbiate attivato questa funzionalità). A mio avviso, questo è importante, perché la paginazione dei commenti è un potenziale pericolo di duplicazione:  il post (e i link in esso contenuti) sono uguali per ogni pagina dei commenti, perciò è del tutto inutile che il robot indicizzi ogni singola paginazione. Per evitarlo:

Disallow: /comment-page-*
Disallow: */comment-page-*

Infine le query strings e i risultati di ricerca. Anche in questo caso è opportuno bloccare i motori di ricerca, impedendo loro di indicizzare tutti gli url che contengono un punto interrogativo: http://example.com/?p=keywords. Attenzione: questa tecnica è utile se si utilizzano i pretty url (es. http://example.com/titolo-del-post/"), e non l’url nativo di WordPress (es. http://example.com/?p=ID). Se mai si dovesse utilizzare questa tecnica con gli url nativi, il rischio concreto è la mancata indicizzazione dei post.

Disallow: /*?*
Disallow: /*?

Per quanto riguarda le pagine archivio e le pagine tag, non sarebbe opportuno bloccare queste pagine con i robots.txt (comunque possibile), perché in questo caso verrebbero sacrificati i link juice di queste pagine. Esiste una tecnica alternativa: l’uso del noindex. Con questa tecnica infatti si raggiunge un duplice obiettivo:

  1. Si impedisce l’indicizzazione delle pagine archivio come si desidera.
  2. Si lascia fluire liberamente il link juice attraverso il blog. Ciò permette una miglior distribuzione di PageRank e dunque una migliore indicizzazione dell’intero blog.

Per poter fare questo si deve agire a livello di meta funzioni nell’header, aggiungendo questo codice tra i tag <head>:

<?php if(is_single() || is_page() || is_home()) { ?>
  <meta name="robots" content="all" />
<?php } else { ?>
  <meta name="googlebot" content="noindex,noarchive, follow,noodp" />
  <meta name="robots" content="noindex, noarchive, follow" />    
  <meta name="msnbot" content="noindex, noarchive, follow" />    
<?php }?>

In questo modo permettiamo ai robots di accedere a tutte le pagine del blog (seguendo anche i link), ma impediamo loro di indicizzare quelle che non siano la home page, i post o le pagine singole. Questa tecnica è utile soprattutto se il blog è vecchio.

Un’altra modalità ancora più semplice per i tag e gli archivi è evitare di pubblicare nelle loro pagine gli articoli interi, limitandosi al solo sommario.

Se proprio però volete bloccare l’accesso alle pagine suddette mediante l’uso del robots.txt (sconsigliato), il comando è il seguente:

Disallow: /tag/
Disallow: /category/

Infine, dobbiamo indicare nel robots.txt l’url della nostra sitemap che avremo preventivamente caricato sulla directory principale del nostro blog:

http://example.com/sitemap.xml

Un’ulteriore e ultima considerazione da fare riguarda i robots dedicati alla indicizzazione del vostro blog per gli adsense di Google. Uno scorretto uso del robots.txt potrebbe impedire a Google Adsense di indicizzare correttamente il vostro blog o addirittura impedirgli di farlo, creandovi non pochi problemi con le pubblicità contestuali. Per evitarlo, è sempre bene permettere a Google Mediapartners di accedere liberamente al vostro blog, aggiungendo la seguente riga alla fine del file robots.txt e prima dell’indicazione della sitemap:

User-agent: Mediapartners-Google*
Disallow:

Naturalmente esistono dei plugins per gestire queste e altre funzionalità finalizzate a un buon posizionamento nei motori di ricerca. Questi i principali e più famosi:

  • Wp Robots Txt. Questo plugin vi permette di gestire comodamente il vostro robots.txt.
  • All in Seo Pack. Questo plugin vi permette invece di ottimizzare il vostro blog per i motori di ricerca.
  • WordPress SEO Plugin. Questo plugin è un’ottima alternativa (se non superiore) a All in Seo Pack.
  • Google Sitemap Generator. Sicuramente il miglior plugin in circolazione nella comunicazione a Google della vostra sitemap.

Spero vivamente che questo post vi sia stato utile.

E' un post utile?00