¿Cómo hacer que gettext SIEMPRE use una traducción en lugar del texto de idioma predeterminado?
Pregunta
Cuando llama a la función gettext php para traducir texto a otro idioma, utiliza el texto que tiene en la página para actuar como la CLAVE / ID para buscar el valor para reemplazarlo con
echo gettext('hello how are you today');
ese sería el texto utilizado para buscar la traducción, sin embargo, me gustaría usar algo como esto
echo gettext('welcome_message');
y que se traduzca al inglés y a cualquier otro idioma que ofrezco. Entonces, ¿cómo podría hacer que esto suceda? ¿Cómo puedo hacer que la función gettext SIEMPRE use un archivo de idioma? Entonces, si mi idioma predeterminado es el inglés para el sitio, en lugar de que gettext muestre welcome_message a un usuario en inglés, mostrará hola cómo estás hoy
¿Es tan simple como crear un archivo de idioma inglés además de los otros archivos de idioma?
Solución
Estás en el camino correcto. El argumento de cadena para gettext () es solo un identificador, no un " idioma predeterminado " ;. Si no hay traducción en el entorno local activo, gettext devolverá ese identificador.
Su solución es justo lo que sospecha: simplemente cree un archivo de traducción al inglés.