Foros del Web » Programando para Internet » PHP »

una web en varios idiomas

Estas en el tema de una web en varios idiomas en el foro de PHP en Foros del Web. hola, voy a crear un portal, y quiero que esté preparada para estar en varios idiomas en un futuro a corto plazo. he pensado una ...
  #1 (permalink)  
Antiguo 10/02/2008, 13:47
 
Fecha de Ingreso: marzo-2005
Mensajes: 271
Antigüedad: 19 años, 1 mes
Puntos: 1
una web en varios idiomas

hola,

voy a crear un portal, y quiero que esté preparada para estar en varios idiomas en un futuro a corto plazo.

he pensado una opción, crear una base de datos "dicciponario" con 1 tabla de 4 columnas:

id
español
ingles
frances
aleman


y hacer un select en cada página dependiendo del idioma seleccionado por el usuario y hacer echos:

select tabla.id, tabla.español from idiomas

y luego hacer echo's de los datos

¿creeis que es buena la opción? o conoceis algun otro método que se use en los portales que tienen más de un idioma?

Mi intención es hacerlo en 5 idiomas


gracias!
  #2 (permalink)  
Antiguo 10/02/2008, 14:06
Avatar de aloqui  
Fecha de Ingreso: diciembre-2007
Mensajes: 973
Antigüedad: 16 años, 5 meses
Puntos: 24
Re: una web en varios idiomas

¿ Pretendes tener traducidos sólo los menús, o también el contenido ?
__________________
Grupos de Música
Pop Music Stars
  #3 (permalink)  
Antiguo 10/02/2008, 14:11
 
Fecha de Ingreso: marzo-2005
Mensajes: 271
Antigüedad: 19 años, 1 mes
Puntos: 1
Re: una web en varios idiomas

todo el website, titulos, menu... todo... excepto el contenido que pongan mis usuarios.
  #4 (permalink)  
Antiguo 10/02/2008, 14:38
Avatar de aloqui  
Fecha de Ingreso: diciembre-2007
Mensajes: 973
Antigüedad: 16 años, 5 meses
Puntos: 24
Re: una web en varios idiomas

A mi no me convence del todo, porque una vez que lo tengas, no vas a saber facilmente donde se usa cada "id".

Yo personalmente uso plantillas XSL con los textos definidos en dos idiomas: español e inglés.
__________________
Grupos de Música
Pop Music Stars
  #5 (permalink)  
Antiguo 10/02/2008, 16:13
 
Fecha de Ingreso: enero-2008
Mensajes: 29
Antigüedad: 16 años, 3 meses
Puntos: 0
Re: una web en varios idiomas

Yo te recomiendo que si tienes que hacer internacionalización en tu página web, uses algum cms como Joomla! 1.5 que soporta internacionalización, o busques algún framework, supongo que simphony soporta internacionalización.
De esta forma te evitaras un montón de trabajo, y seguramente la implementación puedas hacer estara menos acabada que la que han hecho estas personas, las cuales han dedicado mucho tiempo y trabajo a este tema.

Si lo haces por diversion... mira como lo han hecho en Joomla!, se aprende mucho viendo como esta hecho un CMS como Joomla!

Un saludo!!
  #6 (permalink)  
Antiguo 10/02/2008, 16:36
Avatar de eddwinpaz  
Fecha de Ingreso: noviembre-2007
Ubicación: Merida , Venezuela
Mensajes: 1.066
Antigüedad: 16 años, 6 meses
Puntos: 25
Re: una web en varios idiomas

Bueno como yo hago siempre .. ARRAYS ejemplo

lenguaje_ingles.php
Código PHP:

$lang 
=  array();
$lang['HOLA'] = 'Hi';
$lang['REGISTRATE'] = 'Register';
$lang['CREAR_CAMPO'] = 'Create a Field'
//y cuando lo tengas que llamar pues simplemente en tu config.php haces lo siguiente
Código PHP:
include('config.php');
include(
'lenguaje_'.$config['IDIOMA'].'.php');

 echo 
$lang['HOLA']; 
saludos espero que te sirva mi ayuda.

DATO: Con esta tecnica no embasuras la Base de datos y tendras un tiempo de respuesta mucho mas efectivo que ejecutando Queries
  #7 (permalink)  
Antiguo 10/02/2008, 16:40
 
Fecha de Ingreso: agosto-2007
Mensajes: 42
Antigüedad: 16 años, 8 meses
Puntos: 0
Re: una web en varios idiomas

Yo te sugiero ver mi script, a ver si te interesa, aun lo estoy creando pero es totalmente funcional.

Mas info y descarga: http://www.php-hispano.net/archivos-tmp/131

y aquí para verlo en funcionamiento:

http://dymei.net/stl/index.php

Espero que te ayude, ya comentas si te es útil.
  #8 (permalink)  
Antiguo 10/02/2008, 19:02
Avatar de jcxnet  
Fecha de Ingreso: octubre-2005
Ubicación: Perú
Mensajes: 784
Antigüedad: 18 años, 7 meses
Puntos: 56
Re: una web en varios idiomas

Yo probé la opción de grabar todo en la base de datos, pero a la larga las consultas se vuelven pesadas, luego utilicé el método de utilizar arrays en archivos de idiomas, pero con tantas constantes por recordar terminé por dejarlo. finalmente utilicé una solución que a mi parecer es la más adecuada: utilizar archivos de idioma, aquellos que han instalado wordpress sabrán que si quieren cambiarlo a español tienen que agregar un archivo con la extensión .mo, pues bien esos archivos contienen todos los mensajes que existen en tu sitio web y se utilizan en combinación con la función gettext, ahora mis aplicaciones contienen una carpeta llamada idioma y dentro tantos archivos de idioma como sean necesarios: spanish.mo, english.mo, francais.mo, etc
Para crear estos archivos utilizo el Poedit el cual se encarga de detectar dentro del código php las incidencias de la función de "traducción" que por lo general es _e('mensaje a traducir') y así creas todos los idiomas que necesites en tu web.
Más información al respecto: http://www.aota.net/forums/showthrea...threadid=10615
__________________
►I'm a devil on the run ♂
Jcxnet.com
*Keep It Simple **
  #9 (permalink)  
Antiguo 11/02/2008, 05:41
Avatar de popobcn
Moderador
 
Fecha de Ingreso: noviembre-2006
Ubicación: Cerdanyola del Vallès
Mensajes: 3.892
Antigüedad: 17 años, 5 meses
Puntos: 1142
Re: una web en varios idiomas

A mi particularmente me tira más el uso de arrays en la seccion de idiomas. La verdad es que perderse, lo que se dice perderse, no te pierde nadie si defines bien los nombres de variables y haces agrupaciones por página y/o tipo de contendo.

Más rápido imposible y menos pesado de cara a consultas a la bbdd.

Saludos :)
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 02:40.