Jugando con Drupal: internacionalización

Uno de los primeros problemas que se plantean dentro de Drupal es la internacionalización de la web; me explico. Se pide una web en tres idiomas, con las típicas flags para el cambio del mismo. Lo primero que se me pasó por la cabeza llevó al primero de los errores: "sencillo, habilitamos el módulo locale que viene por defecto en el core, importamos los idiomas y listo". Ni mucho menos, ese módulo es capaz de traducir el interfaz, pero no los contenidos. Después pensé que sería demasiado complicado crear un módulo para solventar el problema, así que acabamos como casi siempre, varios intentos fallidos y topamos con la web de Jose A. Reyero, encargado del módulo i18n encargado de resolver todos nuestros problemas.

Manos a la obra instalamos un drupal 4.7.4 (último a la hora de escribir esta entrada), habiliamos el módulo locale e importamos los idiomas que vamos a utilizar (inglés ya viene por defecto, español, y gallego versión cvs). Siguiendo los consejos online, instalamos y habilitamos i18n. En opciones » tipo de contenido activamos multilingual y a la hora de crear nuevo contenido (página o historia) podemos traducir la noticia a los idiomas que anteriormente hemos importado en locale. El resto es automático, destacar que hay que introducir los contenidos (nodos) tres veces en nuestro caso, una para cada idioma, los enlaces y las banderitas los crea i18n. El módulo i18n detecta el idioma del navegador, ajustando el portal al mismo y deja escoger con las típicas banderas:

opciones principales de i18n
habilitamos multilingual en tipos de contenido
opciones de traducción
creando contenido multilingüe
visualizando contenido multilingüe
Nota: Tags que pueden ayudar a otros implicados en sus búsquedas en cuanto a todo ésto por google: drupal multilingual idioma language galician gallego spanish español internacionalización i18n.

Nota2: He traducido el archivo de idioma del módulo i18n a gallego (y corregido algunos pequeños fallos en castellano). Lo he enviado a Jose A. Reyero esperando que lo incluya en el repositorio oficial del módulo. Si alguien lo necesita mientras tanto, que lo pida.

Nota3: Jose A. Reyero ha subido el commit y ya está disponible para todos. Gracias.
php code

About the author

Óscar
has doubledaddy super powers, father of Hugo and Nico, husband of Marta, *nix user, Djangonaut and open source passionate.