Al construir ICanLocalize Translator aprendimos un par de cosas sobre la traducción de bloques en Drupal.
Si tu sitio multilingüe en Drupal contiene bloques, puedes adoptar cualquiera de estos dos métodos:
- Bloques individuales para cada idioma.
- Un bloque para todos los idiomas, traducido utilizando la opción de localización por segmentos.
Método 1: Bloques individuales para cada idioma
Los nodos de Drupal se crean por idioma. Cada nodo incluye contenidos en un único idioma, el módulo i18n une estos nodos de acuerdo a grupos de traducción, es decir, grupos con un mismo contenido en diferentes idiomas.
Sería lógico seguir el mismo método en lo que respecta a los bloques. Lo que harías sería crear bloques múltiples, le asignarías a cada uno de ellos un idioma y lo activarías para los nodos que estén en ese mismo idioma.
El inconveniente de este método es que los bloques se duplican y Drupal no cuenta con un mecanismo que sincronice la traducción de bloques. A diferencia de los nodos, para los cuales el módulo i18n proporciona una agrupación por idiomas y hace que sincronizar contenidos sea una tarea fácil, la traducción de bloques es un proceso manual.
Si creas una versión del mismo bloque para cada idioma, deberás manejar cada versión tu mismo sin ayuda del módulo i18n.
Ventajas:
- Cada bloque en cada idioma es independiente, por lo tanto tienes el control absoluto sobre cómo usar el bloque.
Desventajas:
- La cantidad de bloques a manejar es mayor. Si tienes 7 bloques originales y 5 idiomas, terminarás teniendo un total de 35 bloques para manejar.
Método 2: Un bloque para todos los idiomas, traducido utilizando la opción de localización por segmentos
Crearás una única versión de cada bloque, la cual se visualizará en todos los idiomas. Los contenidos del bloque se traducirán utilizando el mecanismo de traducción por segmentos de Drupal.