Revisionato a giugno 2026, valido per PrestaShop 1.7, 8 e per il tema predefinito basato su Hummingbird in 9.x, tutti sistemi che generano un blocco hreflang nativo da verificare, non da dare per scontato.
Hai già fatto la parte costosa: il tuo negozio parla tedesco ai clienti tedeschi, francese a quelli francesi, polacco a quelli polacchi. La parte più semplice, dire a Google quale versione appartiene a quale pubblico. È quella che molti commercianti PrestaShop sbagliano, e che può vanificare silenziosamente il lavoro di traduzione. Senza segnali hreflang corretti, Google deve indovinare, e spesso indovina male: mostra la pagina inglese a chi cerca in tedesco, oppure interpreta le tue cinque versioni linguistiche come cinque quasi-duplicati in competizione sulla stessa parola chiave, posizionandone una e affossando le altre. Hreflang è il piccolo componente tecnico che trasforma "abbiamo tradotto il negozio" in "il cliente giusto arriva sulla lingua giusta". Questa guida spiega come configurarlo correttamente su PrestaShop in modo specifico. Cosa genera già la piattaforma, dove non basta e come verificarlo invece di fidarsi del fatto che "funzioni e basta".
Questo è l'articolo specifico sugli hreflang all'interno di un gruppo più ampio di contenuti. Se sei ancora in una fase precedente, stai decidendo quali lingue attivare, come strutturare gli URL o se usare un solo negozio o più negozi, parti dalla configurazione di un negozio multilingua e torna qui quando le lingue esistono già.
Cosa comunica davvero hreflang a Google (e cosa no)

Un'annotazione hreflang è una singola riga nell'head della pagina:
<link rel="alternate" hreflang="de" href="https://yourstore.com/de/produkt">
Dice una sola cosa: "esiste un equivalente in lingua tedesca di questa pagina, e si trova qui". Ripetila per ogni lingua e avrai fornito a Google una mappa degli URL che sono traduzioni l'uno dell'altro. Google usa questa mappa per due scopi. Il primo è la corrispondenza linguistica: un utente franco-canadese riceve la tua pagina fr, non la pagina en, anche se quella inglese ha un posizionamento grezzo migliore. Il secondo, che i commercianti sottovalutano, è il controllo della cannibalizzazione: hreflang dice a Google che queste pagine sono alternative, non concorrenti, quindi non si dividono tra loro i segnali di ranking. Ecco perché un problema SEO e un problema di traduzione, in realtà, sono lo stesso problema.
Vale la pena essere chiari sui limiti, perché è lì che nascono le aspettative sbagliate. Hreflang è un suggerimento, non una direttiva. Google lo ha ribadito più volte. Non impone un posizionamento, non sostituisce traduzioni di qualità e non salva pagine che Google considera scadenti. Inoltre non fa nulla direttamente per i clienti: nessuno vede un tag hreflang nel browser. È esclusivamente un segnale per il crawler. Quindi il "perché conta?" è circoscritto ma concreto: un hreflang corretto ti impedisce di perdere posizionamenti già conquistati per un'errata lettura da contenuto duplicato, e riduce i rimbalzi dovuti alla lingua sbagliata che consumano budget pubblicitario e traffico SEO.
Cosa fa già PrestaShop, e dove restano le lacune
Ecco dove sbaglia il vecchio consiglio "PrestaShop non ha hreflang, installa un modulo": le versioni moderne di PrestaShop generano già i tag hreflang. I temi predefiniti (il tema classic su 1.7/8 e il predefinito basato su Hummingbird in 9.x) includono un blocco hreflang nell'head della pagina che cicla sulle lingue attive e stampa una riga rel="alternate" per ciascuna, costruita tramite Link::getLanguageLink(). Quindi un'installazione multilingua standard su un singolo negozio di solito dispone di hreflang funzionante già di base. Prima di acquistare qualsiasi cosa, visualizza il sorgente di una pagina prodotto e cerca "hreflang": potresti averlo già.
Ciò che il core non gestisce sempre in modo affidabile è tutto ciò che sta ai margini, e i margini sono proprio il terreno reale dei negozi internazionali:
- x-default spesso manca. Il ciclo del core genera un tag per lingua, ma spesso omette la voce
hreflang="x-default", che indica a Google cosa mostrare quando nessuna delle tue lingue corrisponde all'utente che cerca (per esempio un cliente olandese su un negozio EN/DE/FR). Senza questa voce, Google sceglie al posto tuo. - Il targeting multi-mercato nella stessa lingua non viene risolto automaticamente. Una lingua PrestaShop ha campi per locale e codice lingua, quindi un valore regionale non è impossibile, ma il core non costruisce automaticamente i cluster complessi a livello di mercato necessari quando vendi sia in Austria sia in Germania in tedesco, oppure nel Regno Unito e negli Stati Uniti in inglese. Distinguere
de-ATdade-DEtra queste alternative è qualcosa che devi configurare e verificare, non qualcosa che il ciclo hreflang standard deduce da solo. Controlla i valori hreflang effettivamente generati dal locale/codice di ogni lingua invece di presumere che puntino al mercato previsto. - Il multinegozio divide l'insieme. Se gestisci negozi separati per Paese (vedi PrestaShop Multistore), ogni negozio conosce solo le proprie lingue. Far sì che
store-de.comestore-fr.comsi richiamino a vicenda nello stesso cluster hreflang è esattamente il caso che il core non assembla per te. - I temi personalizzati e child possono eliminarlo. I temi che sovrascrivono
head.tplo rimuovono l'hook possono cancellare silenziosamente il blocco hreflang. In un numero sorprendente di casi di "hreflang mancante", il problema è semplicemente un tema che non stampa più quel partial.
Quindi, su PrestaShop, la vera domanda raramente è "ho hreflang?". È piuttosto: "l'insieme è completo, reciproco e punta a URL canonici?", e questa è un'attività di verifica, non un acquisto.
Prima sistema correttamente la struttura degli URL
Hreflang punta agli URL, quindi può essere pulito solo quanto lo è la struttura URL multilingua sottostante. PrestaShop ti offre una scelta che configuri in Parametri negozio → Traffico & SEO → SEO & URL (e, per l'opzione del dominio per lingua, nelle impostazioni Imposta URL del negozio / URL multinegozio). Le tre forme realistiche e cosa implicano per hreflang sono:
| Struttura | Esempio | Implicazione per hreflang | Ideale quando… |
|---|---|---|---|
| Sottocartella (ISO nel percorso) | store.com/de/, store.com/fr/ | La più pulita. Un dominio, un certificato SSL, i link lingua del core si risolvono in modo naturale. | Per la maggior parte dei negozi. La scelta predefinita più sensata per un singolo negozio multilingua. |
| Sottodominio | de.store.com, fr.store.com | Funziona, ma ogni alternativa deve usare l'host completo del sottodominio: è facile configurarlo male. | Ti serve separazione infrastrutturale, ma non entità legali distinte. |
| Dominio nazionale (ccTLD) | store.de, store.fr | Segnale geografico più forte, hreflang più difficile: le alternative puntano tra domini diversi, di solito tramite multinegozio. | Operazioni solide per singolo Paese, con esigenze locali di fiducia e pagamento. |
Una trappola specifica di PrestaShop si trova nella configurazione della lingua (Internazionale → Localizzazione → Lingue), dove contano due campi separati. Il prefisso del percorso URL è costruito a partire dal codice ISO a due lettere, quindi una lingua aggiunta con un codice ISO approssimativo produce un percorso approssimativo. Il valore hreflang, invece, deriva dal locale / codice lingua della lingua, quindi un problema di tag lingua sbagliato e un problema di prefisso URL sbagliato si correggono in punti diversi. Controlla il codice ISO se i percorsi sembrano errati, e controlla il locale/codice lingua se i valori hreflang generati sembrano errati, e correggili sulla lingua, non modificando il tag a mano. Valute, imposte e la più ampia configurazione di vendita nell'UE che accompagna tutto questo sono trattate in vendere in Europa con PrestaShop; questo articolo resta concentrato su hreflang.
I quattro errori che annullano silenziosamente hreflang
Hreflang fallisce in silenzio. Non compare alcun errore nel negozio, nessuna pagina si rompe: Google semplicemente ignora l'annotazione e torna a indovinare. Questi quattro casi spiegano quasi tutti i problemi reali:
- Tag di ritorno mancanti (insiemi non reciproci). Se la tua pagina EN indica la pagina DE come alternativa tedesca, la pagina DE deve indicare a sua volta la pagina EN. Hreflang è una stretta di mano; un saluto a senso unico viene scartato. È l'errore più comune in assoluto ed è quello che colpisce le configurazioni multinegozio, dove ogni negozio conosce naturalmente solo metà della relazione.
- Codici lingua errati. Il valore deve essere un vero codice lingua ISO 639-1, eventualmente seguito da un Paese ISO 3166-1.
en-GBè valido;en-UKnon lo è (il Paese è GB).csè il ceco, noncz. PrestaShop ti lascia tranquillamente inserire un codice ISO errato nella configurazione della lingua, e questo finisce direttamente nel tag. - Puntamento a URL non canonici. Se il canonico è
https://store.com/de/ma hreflang punta ahttp://store.com/de(niente SSL, barra finale non coerente o un parametro?), Google vede un URL diverso e scarta l'annotazione. Su PrestaShop questo deriva spesso da una configurazione mista http/https o dal fatto che il canonico degli URL semplificati non corrisponde a ciò che costruisce il ciclo hreflang. - Copertura parziale. Hreflang sui prodotti ma non sulle categorie, sulle pagine CMS o sulla homepage lascia Google nell'incertezza su intere sezioni del sito. Deve essere presente su ogni tipo di pagina, in ogni lingua, altrimenti l'incoerenza diventa essa stessa un segnale che qualcosa non torna.
Quando l'hreflang del core non basta: la via del modulo
Se hai verificato la tua configurazione e hai trovato lacune reali. Niente x-default, un tema personalizzato che ha eliminato i tag, targeting a livello di Paese che il core non può esprimere, oppure un cluster multinegozio che richiede reciprocità tra domini. Quello è il punto in cui un modulo SEO merita il suo posto. Il compito è preciso: generare un insieme hreflang completo, reciproco e canonico su ogni tipo di pagina, incluso x-default, senza modificare i template a mano.
La nostra SEO Revolution suite gestisce hreflang come parte del livello SEO internazionale: genera l'insieme di alternative per prodotti, categorie, pagine CMS e homepage a partire dalle lingue PrestaShop attive, aggiunge la voce x-default che il core tende a saltare e punta ogni tag all'URL canonico, così le incoerenze http/https e i parametri descritti sopra non si infilano nel sistema. Che cosa ottieni, in pratica? Smetti di controllare a mano i tag nell'head di un negozio che continua ad aggiungere pagine, e un aggiornamento del tema non può rimuovere silenziosamente hreflang, perché i tag arrivano dal modulo invece che da un template che potresti sovrascrivere. Si configura dal back office: niente interventi su head.tpl, niente fatture dello sviluppatore per una riga di tag che deve essere corretta su migliaia di URL. Anche qui il limite è onesto: un modulo che genera hreflang perfetti non posiziona il tuo negozio; rimuove il motivo tecnico per cui Google potrebbe posizionare o servire male le pagine che hai già tradotto.
Verifica, non dare per scontato
Hreflang è particolarmente severo perché un'implementazione sbagliata a metà può essere peggiore dell'assenza totale: un insieme reciproco rotto può far perdere fiducia a Google nell'intero cluster. Quindi la verifica non è una rifinitura facoltativa, è il lavoro. Tre controlli, in ordine:
[SCREENSHOT: Browser "Visualizza sorgente" di una pagina prodotto con le righe <link rel="alternate" hreflang="..."> evidenziate nel <head>, una per lingua più x-default]- Prima visualizza il sorgente. Apri una pagina prodotto, cerca "hreflang" nell'HTML e conta. Dovresti vedere una riga
rel="alternate"per ogni lingua attiva, più unax-default. Se ne vedi zero, il tema ha eliminato il blocco. Se vedi le lingue ma non x-default, quella è la prima lacuna. - Controlla manualmente la reciprocità su un cluster. Prendi un prodotto, apri il sorgente di ogni versione linguistica e conferma che ogni versione elenchi lo stesso insieme completo, inclusa se stessa. Se la pagina DE non rimanda a EN, hai trovato un errore di tag di ritorno prima che lo faccia Google.
- Poi affidati alla vista del crawler. Google Search Console non ha più il vecchio report Targeting internazionale, quindi usa un crawler che controlla hreflang (Screaming Frog, Sitebulb o l'audit sito di Ahrefs/Semrush) per individuare in una volta sola tag di ritorno mancanti, codici non validi e destinazioni non canoniche su tutto il sito. È l'unico modo per intercettare il problema della copertura parziale, perché è distribuito su migliaia di URL.
Domande frequenti
PrestaShop genera hreflang da solo o mi serve un modulo?
Le versioni moderne di PrestaShop lo generano già. I temi predefiniti (classic su 1.7/8, il predefinito basato su Hummingbird in 9.x) includono un blocco hreflang nell'head della pagina che cicla sulle lingue attive e stampa una riga rel="alternate" per ciascuna, costruita tramite Link::getLanguageLink(). Quindi un'installazione multilingua standard a singolo negozio di solito ha hreflang funzionante già di base: visualizza il sorgente e cerca "hreflang" prima di acquistare qualsiasi cosa. Passi a un modulo quando trovi lacune reali: x-default mancante, un tema personalizzato che ha eliminato il blocco, targeting a livello di Paese o un cluster multinegozio che richiede reciprocità tra domini.
Com'è fatto davvero un insieme hreflang completo?
Ogni versione linguistica di una pagina dovrebbe elencare lo stesso insieme completo, inclusa se stessa, più un x-default. Per un prodotto EN/DE/FR, ciascuna di queste tre pagine dovrebbe contenere un blocco identico nel suo <head>:
<link rel="alternate" hreflang="en" href="https://store.com/en/product" />
<link rel="alternate" hreflang="de" href="https://store.com/de/produkt" />
<link rel="alternate" hreflang="fr" href="https://store.com/fr/produit" />
<link rel="alternate" hreflang="x-default" href="https://store.com/en/product" />
x-default indica a Google cosa mostrare quando nessuna delle tue lingue corrisponde all'utente che cerca (per esempio un cliente olandese su un negozio EN/DE/FR). Punta ogni tag all'URL canonico, stesso protocollo, stessa barra finale, nessun parametro ? fuori posto, oppure Google scarta l'annotazione.
Qual è il modo più comune in cui hreflang fallisce in silenzio?
I tag di ritorno mancanti. Hreflang è una stretta di mano: se la tua pagina EN indica la pagina DE come alternativa tedesca, la pagina DE deve indicare a sua volta la pagina EN. Un saluto a senso unico viene ignorato. È l'errore che colpisce più duramente le configurazioni multinegozio, perché ogni negozio conosce naturalmente solo metà della relazione: far sì che store-de.com e store-fr.com si richiamino a vicenda è esattamente il caso che il core non assembla per te.
I miei valori hreflang sono sbagliati: dove li correggo, nel tag o nella lingua?
Nella lingua, mai nel tag a mano. Il prefisso del percorso URL deriva dal codice ISO a due lettere della lingua, mentre il valore hreflang deriva dal locale / codice lingua della lingua (Internazionale → Localizzazione → Lingue). Quindi un problema di percorso sbagliato e un problema di tag sbagliato si correggono in campi diversi. Usa un vero codice ISO 639-1, eventualmente seguito da un Paese ISO 3166-1: en-GB è valido, en-UK non lo è; cs è il ceco, non cz.
Come verifico hreflang su migliaia di URL?
Visualizza prima il sorgente di una pagina per confermare che i tag esistano e includano x-default, poi controlla manualmente la reciprocità su un cluster di prodotto. Dopo, affidati a un crawler: Google Search Console non ha più il vecchio report Targeting internazionale, quindi usa Screaming Frog, Sitebulb o l'audit sito di Ahrefs/Semrush per segnalare tag di ritorno mancanti, codici non validi e destinazioni non canoniche in tutto il sito. È l'unico modo pratico per intercettare la copertura parziale, perché è distribuita su tutto il catalogo.
Letture correlate
- Configurazione di un negozio multilingua, sistema correttamente il negozio tradotto e gli URL per lingua prima di preoccuparti di hreflang.
- PrestaShop Multistore. Dove la reciprocità hreflang tra domini diventa la parte difficile.
- Selettore valuta e bandiere lingua, il selettore visibile agli utenti che hreflang completa, ma non può sostituire.
Il principio alla base è lo stesso che attraversa il resto di questo gruppo di contenuti: un negozio che vende oltre confine è fatto di piccoli segnali esatti, la valuta giusta, la bandiera lingua giusta, la riga fiscale giusta e l'hreflang giusto, ciascuno economico da sistemare, ciascuno capace di disperdere valore quando è leggermente sbagliato. Cura l'esperienza utente di lingua e valuta per trattenere i visitatori (selettore valuta e bandiere lingua), calcola e addebita correttamente in base al mercato (multivaluta e vendita internazionale) e lascia che hreflang faccia in modo che il motore di ricerca mandi ogni cliente alla versione costruita per lui. Su PrestaShop questo significa sapere che il core fa già gran parte del lavoro, e concentrare gli sforzi su x-default, reciprocità e corrispondenza canonica, cioè sui dettagli che decidono se quel lavoro conta davvero.
Commenti
Lascia un commento
Condividi una domanda, un dettaglio di installazione o un feedback utile per un altro lettore.