Cos'è hreflang
hreflang si usa per i siti multilingua e multi-regione. Risolve i problemi di contenuto duplicato (stesse informazioni in lingue diverse) e aiuta Google a scegliere la versione corretta per l'utente in base a lingua e posizione.
Sintassi e codici
html
<link rel="alternate" hreflang="ru" href="https://example.com/ru/" />
<link rel="alternate" hreflang="en" href="https://example.com/en/" />
<link rel="alternate" hreflang="en-US" href="https://example.com/en-us/" />
<link rel="alternate" hreflang="x-default" href="https://example.com/" />Codici: lingua – ISO 639-1 (ru, en, de). Lingua+regione – ISO 639-1 + ISO 3166-1 (en-US, en-GB, pt-BR). x-default punta alla versione di fallback quando nessuna lingua/regione corrisponde.
Metodi di implementazione
- Link HTML in
<head>: il metodo più comune per le pagine normali. - Header HTTP: per i file non HTML (PDF, immagini ecc.).
- Sitemap: comoda per i siti grandi, dove aggiungere annotazioni a mano su ogni pagina è oneroso.
Esempio in sitemap.xml:
xml
<url>
<loc>https://example.com/ru/</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://example.com/en/" />
<xhtml:link rel="alternate" hreflang="ru" href="https://example.com/ru/" />
<xhtml:link rel="alternate" hreflang="x-default" href="https://example.com/" />
</url>Errori comuni nell'uso di hreflang
- Autoriferimento mancante (la pagina deve puntare a se stessa)
x-defaultassente- Codici lingua errati (per esempio
rusinvece diru) - URL relativi (servono URL assoluti con https://)
- Link asimmetrici (la pagina A linka B, ma B non linka A)
Testa il tuo hreflang con il report «Segmentazione per paese» in Google Search Console o tester di terze parti (per esempio lo strumento di Aleyda Solis). Gli errori in hreflang possono spingere Google a ignorare le tue annotazioni.
FAQ
x-default è obbligatorio?
Sì, Google raccomanda vivamente di aggiungere
x-default per indicare la versione destinata agli utenti la cui lingua o regione non è coperta dalle altre annotazioni.Posso usare hreflang insieme al canonical?
Sì. Ogni versione linguistica deve avere un proprio canonical che punta a se stessa. Non impostare il canonical verso una versione in un'altra lingua.
Cosa fare se ho la stessa lingua ma regioni diverse (en-US, en-GB)?
Usa tag hreflang separati con le regioni. Google mostrerà en-US agli utenti statunitensi e en-GB a quelli britannici, se quelle pagine sono ottimizzate per le rispettive regioni.