6.4. Soporte de Idiomas

6.4.1. Estructura y directorios

Los archivos de idioma se guardan en el directorio ./lang mas el codigo de 2 letras (en minúsculas) del idioma correspondiente segun el ISO-639 (http://www.w3.org/WAI/ER/IG/ert/iso639.htm), así, para el idioma Alemán se usara un "de", mientras que para español "es". El archivo cargado por defecto sera main.php.

Los archivos de idioma para un módulo se guardan en el directorio lang/ dentro del directorio del módulo con el mismo formato utilizado para el principal exceptuando que para un módulo de deben diferenciar las constantes de Idioma en los siguientes archivos:

Tabla 6-2. Ficheros de Idioma

ArchivoUso
lang/main.php Utilizado de forma global si se encuentra en ./lang/codigo/main.php, si es parte del Idioma de un módulo, solo se carga cuando se accede al módulo.
lang/conf.php Es cargado por el modulo conf cuando se pide cambiar variables de configuración. Sólo contiene la descripción de la opción. Cuando el archivo no es encontrado o si la opción no está definida, el valor de la llave en mayúsculas es mostrado.
lang/core.php Utilizado de forma global cuando se encuentra en un módulo. Se debe tener el cuidado de no incluir mas de lo estrictamente necesario (lo que puede ser usado fuera del módulo) para evitar llenar la memoria de datos sin utilizar.
lang/*.block.php Cargado sólo cuando se llama a los bloques cuyo nombre concuerda con *. Por ejemplo, el bloque weather.php cargará el archivo de idioma lang/codigo/weather.block.php dentro del directorio de idioma del módulo que contiene al mismo bloque.
lang/*.letter Usado por algunos módulos para utilizar plantillas de mensajes para correo electrónico. Por ejemplo el modulo users

6.4.2. Creación de un nuevo Idioma

Se debe seguir las especificaciónes de Idioma (Sección 6.4.1) y darle prioridad al directorio ./lang, en seguida a los directorios lang/. Una vez que esos directorios existan, Gekko los cargará como nuevos Idiomas disponibles.

Para empaquetado y distribución del idioma por favor revisa el Sección 6.7.1.