Lo scopo del canonical URL
Quando si parla di canonical URL, mi duole dirlo, la metà delle volte se ne parla ignorando o dimenticando lo scopo di questo attributo nelle pagine HTML.
Durante lo sviluppo del plugin Crusco Canonical URL per Joomla, mi sono documentato il più possibile rileggendo nuovi e vecchi libri sulla SEO.
Vi riporto questo brano, tratto da SEO Warrior di John I Jerkovic, edito da O'Really Media:
A canonical link is like a preferred link. This preference comes to light when we are dealing with duplicate content and when search engines choose which link should be favored over all others when referring to identical page content~ SEO Warrior
Voglio ripeterlo ancora una volta: lo scopo del canonical URL è quello di specificare ai motori di ricerca quale link preferire quando, durante il processo d'indicizzazione di un sito web, vengono trovati gli stessi identici contenuti raggiungibili da link differenti.
PUNTO!
Il canonical URL ha poco a che spartire con gli URL SEF (lo URL specificato come canonico può essere anche non-SEF).
Il canonical URL non ha niente a che vedere con i redirect.
Diffidate da chi vi dice il contrario, perché o non conosce bene l'argomento, oppure tenta di vendervi un prodotto infarcito di caratteristiche inutili o addirittura dannose.
Sia chiaro, la spintarella a livello promozionale ci può anche stare.
Io ho taggato il nostro plugin nella JED affinché appaia anche agli utenti interessati al SEF, sebbene, come detto poco fa, non strettamente correlato a quest'ultimo.
Ma io leggo di software dedicati alla gestione dei canonical URL che fanno redirect e operazioni indiscriminate di pulizia su indirizzi SEF!
Questo non fa altro che ingarbugliare un argomento già di per sé poco chiaro, se non agli addetti ai lavori.
Basta così?
Purtroppo no, perché, come vedremo, questa confusione può rivelarsi fatale per il posizionamento di alcuni contenuti.
Cosa sono le query string
Anche se il canonical URL non è strettamente legato al SEF, è solo quando questi lavorano in tandem che si ottengono i migliori risultati con i motori di ricerca.
Forse è proprio questo che ha fatto sì che gli aspetti e le prerogative di uno, vengano a volte (impropriamente) riversati sull'altro.
Parliamo delle query string.
Le query string sono dei parametri che appaiono alla destra dell'indirizzo di una risorsa presente in rete.
Nel nostro caso la risorsa è una pagina web.
Le query string sono separate dall'indirizzo della pagina dal carattere che rappresenta il punto interrogativo (?).
Ecco un esempio che risulterà familiare a tutti:
https://www.google.com/search?q=today+weather
Tutto quello che c'è alla destra del punto interrogativo sono le query string.
Le query string servono a rendere dinamici i dati che deve restituirci la pagina che stiamo visitando.
Ogni query string è formata da una coppia parametro=valore.
Di solito sono presenti più coppie e ogni coppia è separata dall'altra dal simbolo della "e commerciale" (&).
La query string dell'esempio serve a interrogare (q sta per query) la "pagina" search di Google per chiederle di estrapolare i risultati indicizzati per le parole today+weather.
È facile capire quanto sono importanti le query string no?
Eppure quando si parla di URL SEF, le query string vengono spesso demonizzate.
SEF e query string... occhio!
Intendiamoci, gli URL SEF sono una mano santa per le SERPs.
I motivi principali sono due:
- incrementano la leggibilità dei link;
- permettono l'inserimento di keyword.
Per capirci, gli URL SEF trasformano questo linkhttps://www.miosito.it/index.php?option=com_content&view=article&id=109&catid=18&lang=it&Itemid=116
in quest'altrohttps://www.miosito.it/blog/spaghetti-alla-carbonara-ricetta-tradizionale
che è indubbiamente più appetibile sia agli utenti che ai motori di ricerca rispetto alla controparte non-SEF.
Il link qui sopra porta all'articolo "Spaghetti alla carbonara: ricetta tradizionale", che possiamo definire come una risorsa "statica", ovverosia che non può restituire all'utente un contenuto dinamico dell'articolo per mezzo delle query string.
Questo tipo di risorsa potrebbe prevedere al limite una query string che potremmo definire di formato, per esempio che ci permette di visualizzare una versione da stampa dell'articolo
https://www.miosito.it/blog/spaghetti-alla-carbonara-ricetta-tradizionale?print=1
ma a meno che non si voglia indicizzare la versione stampabile (scelta oltremodo bizzarra), è corretto che il canonical URL possa fare a meno delle query string ed essere chiaro e user friendly:
https://www.miosito.it/blog/spaghetti-alla-carbonara-ricetta-tradizionale
Ma non è sempre così.
Mi chiedo spesso perché il mondo intero sia così incline a generalizzare. Le generalizzazioni sono raramente vere, e di solito sono assolutamente imprecise. ~ Agatha Christie
Spesso le query string che accompagnano gli URL SEF, fanno riferimento a pagine che restituiscono contenuti dinamici.
In questi casi, i fautori del less is more sono avvisati, la bramosia di avere un canonical URL scevro delle query string è anzichennò nefasta!
L'esempio che voglio portarvi interessa i Blog, come quello che state leggendo in questo momento.
Oggi che riceviamo ognora flussi di informazioni provenienti dalla rete, la frase "Content is king" è più che mai un mantra per chiunque voglia condividere su un Blog le proprie esperienze e conoscenze.
Per raggiungere le persone in questo contesto, la qualità dei contenuti deve accompagnarsi quanto più possibile alla corposità degli stessi.
I maggiori CMS sono venuti incontro a queste necessità realizzando una soluzione semplice ed efficace per trattare i contenuti di una certa lunghezza: la paginazione.
I benefici della paginazione sono numerosi e vanno da quelli tecnici legati alla SEO, a quelli puramente user-centrici, come ad esempio evitare che i tuoi lettori se la battano a gambe levate davanti all'ennesima pagina web lunga come la quaresima!
Facendola breve: hai scritto un articolo luuungo?
Allora devi usare la paginazione!
Ti sei dimenticato che stavamo parlando delle query string vero? 🙂
Tranquillo, ora torniamo in carreggiata, perché la paginazione implica proprio l'uso delle query string.
Esempio pratico con Joomla
D'ora in poi farò esempi specifici per Joomla, ma il discorso in generale vale per qualsiasi CMS.
Dividi in cinque pagine il tuo articolo lungo come una quaresima.
Non sai come rendere multipagina un articolo in Joomla?
Ti consigliamo di leggere Explore the core: multiple pages, tabs and sliders with the Page Break Plugin su Joomla! Magazine
Partendo dalla prima pagina puoi spostarti sulle altre usando i tasti avanti/indietro oppure l'indice dei contenuti (TOC).
Noterai che ognuna delle cinque pagine ha un indirizzo SEF leggermente diverso dalle altre:
https://www.miosito.it/blog/articolo-quaresima
https://www.miosito.it/blog/articolo-quaresima?start=1
https://www.miosito.it/blog/articolo-quaresima?start=2
https://www.miosito.it/blog/articolo-quaresima?start=3
https://www.miosito.it/blog/articolo-quaresima?start=4
Ogni indirizzo richiama una parte distinta dell'articolo e sono chiaramente le query string start=x
che permettono di visualizzare una parte piuttosto che un'altra.
Ora hai cinque contenuti diversi da far indicizzare, ma dal CMS puoi specificare un solo canonical URL per articolo.
Quale indirizzo dovresti specificare come "canonico"?
La soluzione migliore
Sicuramente NON devi rimuovere le query string, perché questo porterebbe all'indicizzazione della sola prima pagina.
La cosa meno peggio che potresti fare è non specificare nessun canonical URL. In tal caso i motori di ricerca potrebbero trovare tutt'e cinque i contenuti, anche se non sarebbero in grado né di ordinarli, né di capire che fanno parte dello stesso articolo.
Ma perché dovresti fare la cosa meno peggio e non quella migliore?
La funzione "Struttura degli URL SEO per la paginazione", disponibile nei piani Personal, Professional e Agency del plugin Crusco Canonical URL per Joomla, si occupa di impostare i canonical URL per ogni pagina e segnalare sia che fanno parte di uno stesso contenuto più lungo, sia l'ordine corretto di lettura attraverso i valori di relazione di pagina, raccomandati dal W3C e utilizzati per l'accessibilità del web e la conformità all'ADA.
Tutte queste cose aumentano la valutazione del tuo sito web agli occhi dei motori di ricerca, e il plugin si occupa di farlo per tutti gli elementi Joomla! per i quali è prevista la paginazione:
- articoli multipagina;
- lista degli articoli archiviati;
- lista degli articoli in evidenza;
- categoria blog;
- lista di singola categoria;
- motore di ricerca;
- elementi taggati;
- lista compatta di elementi taggati;
- lista di tutti i tag.
Forte vero?
Per conoscere tutte le caratteristiche di questo plugin, visita la pagina di Crusco Canonical URL per Joomla!
Conclusioni
In questo articolo abbiamo discusso quanto possa essere deleterio per il posizionamento del nostro sito web, demonizzare a ogni costo le query string negli indirizzi SEF quando questi debbano essere usati come canonical URL.
L'esempio della paginazione dei contenuti è quello più comune, ma ci sono tante altre situazioni che possono capitare durante l'utilizzo dei CMS.
Se vuoi gestirle al meglio, senza sobbarcarti di lavoro extra, il nostro consiglio è sempre quello di rivolgersi a professionisti che hanno già affrontato e risolto questi problemi.
Se utilizzi Joomla, non possiamo non consigliarti il nostro plugin, che gestisce proprio queste situazioni e tutte quelle che ruotano intorno ai canonical URL.
Che il level up sia con voi!
- Supporta tutti i componenti e le viste standard di Joomla!
- Genera automaticamente i canonical URL
- Permette l'inserimento di canonical URL personalizzati
- Supporta siti web con contenuti in più lingue
- Crea la struttura di relazioni per i contenuti multipagina
- Supporto nativo per Joomla! 5