Sviluppo di un sito multilingua: struttura, URL e flusso di lavoro
Aggiungere lingue a un sito è di rado solo traduzione. Cambia la struttura degli URL, aggiunge un insieme di tag reciproci che si rompono in silenzio, e introduce un flusso di contenuti in cui una pagina diventa dodici pagine che possono divergere.
Questa guida copre le decisioni strutturali, i requisiti tecnici, e il flusso di lavoro che impedisce alle traduzioni di invecchiare.
Decidi per primo lo schema degli URL#
È la decisione costosa da revocare, perché tocca ogni URL, ogni reindirizzamento e ogni tag hreflang del sito.
| Schema | Esempio | Quando è adatto |
|---|---|---|
| Sottocartella | sito.com/it/guide | La maggior parte dei siti: il più semplice, un dominio accumula autorità |
| Sottodominio | it.sito.com/guide | Infrastruttura separata o team separati |
| Dominio nazionale | sito.it/guide | Forte impegno locale, e un sito a parte da gestire |
| Parametro | sito.com/guide?lang=it | Da evitare: segnali deboli, rischio di duplicati |
Qualunque cosa scegli, decidi separatamente se lo slug viene tradotto. Slug tradotti aiutano la pertinenza locale; slug identici sono più semplici da mantenere. Entrambe le scelte si difendono — cambiare idea dopo no.
I requisiti tecnici#
Ciascuno di questi fallisce in silenzio, ed è per questo che tanti siti multilingua non hanno un hreflang funzionante pur avendo i tag.
- hreflang reciproco. Ogni pagina di un insieme linguistico elenca tutte le altre, se stessa compresa. Un riferimento inverso mancante fa scartare il gruppo.
- Codici coerenti. Lo stesso codice nell'HTML e nella sitemap. Due codici per una pagina rompono l'insieme.
- x-default che punta al selettore di lingua o alla versione predefinita.
- Attributi lang e dir corretti sull'elemento html di ogni versione.
- Canonico autoreferenziale per lingua — non rendere mai canoniche le traduzioni verso l'originale.
- Nessun reindirizzamento automatico per IP o lingua del browser. Rompe la scansione e scavalca una scelta deliberata; proponi invece un suggerimento.
- Metadati tradotti. Titoli e descrizioni nella lingua di destinazione, non in quella di partenza.
Un flusso di traduzione che regge#
Il modo di fallire non è la prima traduzione, è la quinta modifica alla pagina italiana che non raggiunge mai le altre undici.
- Modella le traduzioni come versioni collegate di un unico elemento di contenuto, così il sistema sa che vanno insieme.
- Tieni traccia di quali traduzioni sono superate rispetto alla fonte, e mostralo nell'interfaccia di modifica.
- Decidi cosa succede quando manca una traduzione: ripiegare sulla lingua predefinita, o non pubblicare affatto quell'URL.
- Non pubblicare mai un URL privo di traduzione: una pagina resa a metà in un'altra lingua è peggio di nessuna pagina.
- Tieni una data di revisione per lingua, non per elemento di contenuto.
- Dai contesto a chi traduce: una schermata o un'anteprima batte un foglio di calcolo di stringhe.
- Decidi chi è responsabile di ogni lingua. Le lingue senza responsabile invecchiano per prime.
La traduzione automatica come punto di partenza va bene; pubblicarla senza revisione no. Un output non rivisto si legge come non rivisto, ed è esattamente il tipo di contenuto di scarso valore su cui i motori sono sempre più espliciti.
Oltre il testo#
La traduzione è la parte che tutti mettono a budget. Queste sono le parti che vengono dimenticate e causano errori visibili.
| Elemento | Cosa cambia |
|---|---|
| Date e numeri | Formato e separatori differiscono per area |
| Valuta | Simbolo, posizione e convenzioni di arrotondamento |
| Indirizzi e numeri di telefono | Ordine dei campi e regole di validazione |
| Nomi | L'ordine di nome e cognome non è universale |
| Lunghezza del testo | Tedesco e finlandese si allungano; le impaginazioni devono cedere |
| Direzione di lettura | Arabo ed ebraico richiedono proprietà CSS logiche |
| Immagini con testo | Serve una versione per lingua, oppure nessun testo nell'immagine |
| Pagine legali | I requisiti differiscono per giurisdizione, non solo per lingua |
Domande frequenti
Devo reindirizzare automaticamente i visitatori alla loro lingua?
No. Il reindirizzamento automatico per IP o lingua del browser interferisce con la scansione — un crawler da un paese può non vedere mai le altre versioni — e scavalca scelte deliberate, cosa irritante per chi legge in una seconda lingua. Mostra un suggerimento che si possa chiudere e lascia decidere alla persona.
La traduzione automatica è accettabile?
Come prima bozza sì, e fa risparmiare denaro vero. Pubblicata senza revisione umana produce contenuti che si leggono come generati da una macchina, cosa che tocca sia le persone sia la valutazione di qualità della ricerca. L'approccio pragmatico è traduzione automatica più una revisione madrelingua, soprattutto per pagine che vendono o spiegano qualcosa di importante.
Cosa rompe hreflang più spesso?
Tag non reciproci: la pagina A elenca la B, la B non elenca la A, e l'intero gruppo viene ignorato. Al secondo posto, codici discordanti tra HTML e sitemap. Entrambi si evitano generando hreflang da un'unica fonte che fa fede anziché mantenendo due elenchi.
Devo tradurre tutto il sito?
No, e una traduzione parziale è normale. Traduci ciò che ha domanda in quel mercato e lascia che il resto esista solo nella lingua di partenza. Ciò che non devi fare è pubblicare un URL vuoto o tradotto a metà: o la pagina esiste correttamente in quella lingua, o non esiste affatto.
sito web multilinguahreflangtraduzione sito webseo internazionalecms multilingualocalizzazione