En este post, veremos de forma muy sencilla, la puesta en marcha de un sistema de traducción multilingüe en PHP. Como siempre, vamos a ver el código por partes, para poder tener una idea de como funciona el sistema.
1. Página principal
El fichero index.php contiene la carga principal de todos los elementos de la aplicación. Para el ejemplo seleccionado, vamos a presentar solamente un título, un mensaje de bienvenida y un saludo, que se podrán traducir al idioma seleccionado. El selector de idiomas, será simplemente una serie de links en el pie de la página.
2. Fichero de configuraciones básicas
En este archivo, definimos las funciones básicas que necesitamos para que funcione la aplicación: la carga del diccionario, la traducción como tal y la recogida del idioma por defecto del usuario. Para el ejemplo, se ha definido que por defecto está en español, pero se podría seleccionar dinámicamente, por ejemplo, del idioma del navegador.
3. Cambio de idiomas
Desde la página principal, se llama a través de AJAX a este fichero, que se encarga de recargar el contenido traducido, cada vez que el usuario selecciona un idioma.
4. Diccionario
Se trata de un fichero json que obtiene traducciones para diferentes idiomas. Cada idioma tiene sus propias traducciones para claves específicas, como «titulo», «saludo», «bienvenido», etc.
Este enfoque ofrece una solución muy simple para desarrollar aplicaciones web multilingües, pero como siempre, funcional.
Aquí podeis ver la aplicación en funcionamiento
Os dejo el código de esta aplicación en mi repositorio de GitHub, como siempre, para que le deis un vistazo completo y lo podáis usar de guía para vuestros desarrollos.