Sito multilingue perfetto con Drupal 7
Drupal 7 ha introdotto delle nuove funzionalità che rendono i siti multilingue molto più facile da gestire. Ma Drupal in sé non è sempre facile da configurare e a volte uno si perde quando ha bisogno di fare un sito Drupal in diverse lingue. In questo tutoriale cercherò il più possibile di spiegare come ogni aspetto di un sito multilingue funziona, in modo che possa scegliere quali sono le migliori opzioni per te. Alla fine dovresti avere un sito Drupal multilingue installato e funzionante senza nessun problema.
Vedremo qui:
1 - Le funzionalità di Drupal 7 per i siti multilingue.
-Aggiungere le lingue
-Rilevamento e selezione.
-Traduzione del interfaccia.
2 - I moduli complementari per le traduzioni in Drupal 7.
-Localization Update
-i18n
-Localization client
-Global redirect
-Translation Management Tool (nuovo)
3 – Messa a punto
-Cambiare di lingua
-Traduzioni automatiche al volo
1 - Le funzionalità di base
Le opzioni di base per i siti multilingue sono Content translation e Locale. Con queste due opzioni attivate avete già un sito multilingue funzionante.
Aggiungere delle lingue
Per aggiungere una nuova lingua vai a .../admin/config/regional/language e clica su Aggiungi lingua. Si può anche decidere quale sarà la lingua predefinita, qual è il prefisso del percorso (es: www.example.com/fr per il francese) o il dominio per la lingua (es: fr.example.com per il francese).
Con un prefisso del percorso avrai un sito con diverse lingue, con un dominio per la lingua avrai diversi siti, uno per ogni lingua. Se il tuo obiettivo è di avere lo stesso contenuto tradotto in diverse lingue, forse è meglio di scegliere il prefisso del percorso, ma, se ogni lingua ha un contenuto diverso, un amministratore diverso e diversi utenti, forse il dominio della lingua sarebbe la migliore opzione. Pensaci bene prima di scegliere perché sarebbe penoso cambiare una volta che il sito è online (si romperebbe i link al tuo sito...).
Se vuoi che i tuoi visitatori vedono prima la lingua predefinita e poi scelgono la loro lingua preferita, lascia il prefisso del percorso o dominio della lingua vuoto per la lingua predefinita. Se trovi più conveniente cercare di indovinare la lingua dell'utente, aggiungi un prefisso di percorso o dominio della lingua a tutte le lingue, compreso quella predefinita.
Alcune persone mescolano le lingue utilizzando nodi con "linguaggio neutro", oppure esibiscono il nodo originale se la traduzione non è disponibile. Consiglio di non mescolare le lingue in un sito pubblico. Se mescoli, il tuo sito sarà indicizzato dai motori di ricerca con un dato contenuto e parole chiave. Mentre il nodo non viene tradotto il contenuto viene duplicato e una volta che si traduce, alcuni utenti verranno indirizzati a una pagina che non è nella loro lingua. (Nota: per evitare contenuti duplicate quando utilizzi “linguaggio neutro” attiva l'opzione i18n_redirect).
Rilevamento e selezione
Drupal offre molti modi per scegliere la lingua preferita dell'utente. È possibile utilizzare un metodo solo o diversi metodi con un ordine di priorità (se un metodo non funziona, il prossimo sarà applicato). Questa opzione è in ... /admin/config/regional/language/configure. Ecco come ogni metodo funziona:
URL (prefisso o dominio) è probabilmente la migliore soluzione per la maggior parte dei siti. Forse potresti avere un piccolo problema con il prefisso del percorso, ma esiste una soluzione facile. Il problema è che ci potrebbero essere incongruenze tra il contenuto del sito e l'interfaccia del sito. Se avete, ad esempio, una pagina "About" tradotta in spagnolo "Sobre" è possibile accedere alla pagina www.example.com/en/about (il contenuto e l'interfaccia sono in inglese), o www.example.com/en/sobre (il contenuto è in spagnolo ma l'interfaccia è in inglese a causa del prefisso), o www.example.com/es/about (...hai capito l'idea). Quando i motori di ricerca guardano il tuo sito, mescolano tutte le lingue e perderesti dei visitatori. Per risolvere questo problema è necessario installare il modulo Global Redirect per rendere l'interfaccia e il contenuto coerenti. Parleremo del modulo Global Redirect di seguito.
Browser può essere un buon metodo, ma non deve essere il primo (ne solo) metodo di rilevamento dato che l'utente non sarebbe in grado di passare da una lingua a un'altra manualmente (invece dovrebbe modificare le preferenze del browser). Quando si cambia la lingua manualmente, solo il contenuto verrà visualizzato nella lingua selezionata dall'utente, mentre l'interfaccia sarà nella lingua del browser. La selezione della lingua manualmente non avrebbe neanche funzionato se Global Redirect è attivato. Uso il metodo di rilevamento del browser solo se tutte le lingue hanno un prefisso e URL viene selezionato come primo metodo di rilevamento. Ciò significa che gli utenti che cercano una URL con il percorso della lingua sono ridiretti su quella lingua (www.example.com/it = versione italiana del sito), ma se qualcuno in Italia cerca www.example.com sarà reindirizzato al italiano se il suo browser è italiano, o tedesco se il suo browser è tedesco e così via. (Nota: se il tuo sito utilizza il cache e unicamente il rilevamento dal browser, stai attento dato che una pagina del cache non cambierà lingua!)
Penso che URL come primo metodo e browser come secondo metodo, con prefissi per tutte le lingue (compreso la lingua predefinita) è il migliore metodo di rilevamento e selezione che si può scegliere.
Session aggiungerà una variabile di sessione alla URL (www.example.com?language=es). Non è una buona idea perché impedisce che la pagine vada in cache (il sito sarà più lento) e session può essere un problema dato che servirà un contenuto diverso per una stessa URL. Google è in grado di gestire informazioni di sessione ma dovresti spiegarlo nel tuo Google Webmaster Tools. Insomma, non è così semplice come il percorso o prefisso URL. Se utilizzi URL e Session insieme vedrai che a volte Session non forzerà un cambiamento di URL in modo che la negoziazione della lingua sarà molto incoerente. Non è consigliabile utilizzare insieme URL e Session. C'è una pagina in Drupal.org contro l'uso delle sessioni.
Lingua Preferita dell'Utente è una cattiva idea. Significa che gli utenti non saranno in grado di passare da una lingua a un'altra facilmente e temporaneamente quando sono loggati nel sito, l'utente dovrà cambiare la lingua nell suo profilo invece di semplicemente utilizzare il selettore della lingua come gli altri utenti. Questo potrebbe essere controproducente e fastidioso per gli utenti bilingue.
Tradurre l'interfaccia
Drupal offre anche un modo per tradurre l'interfaccia del sito e importare le traduzioni da localize.drupal.org. Questo si trova in /admin/config/regional/translate. Anche se funziona bene, ci sono alcuni moduli addizionali che possono migliorare enormemente le funzionalità di base.


Aggiungi un commento