En nuestro caso queríamos crear un Portal tanto Euskera como en Castellano.
Antes de nada hay que avisarle al cliente que mantener un Portal totalmente bilingue exige un dedicación importante, ya que hay que duplicar toda la información, puede ser percibido por el visitante como falta de seriedad o de respeto hacía su lengua, si no están traducidas todas las partes del sitio web.
A la hora de crear un sistema totalmente bilingue se nos presentan varios problemas, cómo organizar la información, metodos para determinar el lenguaje en el que se mostrará la página, estructura de la Base de Datos, ....
Primero de todo tuvimos que decidir que partes de sistema ibamos a traducir, solo los contenidos, también las direcciones URL, etc... decidimos que la traducción iba a ser completa.
http://www.dominio.com/es/foros/musicahttp://www.dominio.com/eu/foros/musicahttp://www.dominio.com/eu/foroak/musikaEs decir, no sólo ibamos a cambiar la variable de idioma es/eu sino toda la URL, ésto añadía una complejidad al sistema.
En nuestro caso ibamos a crear un sistema en Php y con los contenidos almacenados en una Base de Datos MySql.
Las variables las recibiríamos via GET de la URL, es o eu, utilizamos el mod_rewrite para hacer más amigable la dirección:
En vez de index.php?lang=es
Saldría es/
A la hora de diseñar la base de datos había 2 posibilidades:
Nos decidimos por la primera opción por un tema de rendimiento en la segunda opción había que realizar 2 consultas, sabiendo que la segunda opción es más correcta pero en un desarrollo web es más importante la rapidez, para una base de datos con pocos accesos el segundo caso sería mejor.
A las sentencias SQL habría que añadirles la variable del idioma y un guión bajo antes de los campos que estuvieran en los 2 idiomas:
Ejemplo:
$idioma = $_GET($lang);
$resultado = mysql_query("select id, ". $idioma ."_titulo, ". $idioma ."_contenido, fecha from contenido");
También teníamos que decidir si al cambiar de idioma iría a la página principal o mentendría la página en la que estabas actualmente
Por último había que decidir que criterios utilizar para decidir en que lenguaje se le mostraría al visitante la primera vez, había 3 opciones:
En este caso nos decidimos por la segunda opción, la consideramos la menos mala aunque no es la ideal.
Una vez que el usuario se decanta por un idioma el sistema grabará una cookie con el idioma de usuario, y siempre que vuelva al sitio le respetará el idioma elegido.
Por supuesto que el sistema puede ser mejorable, lo hemos intentado contar de una manera rápida y esperamos que le pueda servir a alguien, naturalmente se admiten comentarios.
Autor: ketari.com | Publicado el 15-02-2005 | Lecturas: 5017
Software Libre no significa Gratis es Libertad para Crear, Modificar y Distribuir