Foro de elhacker.net

Programación => PHP => Mensaje iniciado por: jamarchi en 11 Abril 2008, 23:51 pm



Título: Pagina en dos idiomas
Publicado por: jamarchi en 11 Abril 2008, 23:51 pm

Hola Gente .......  ;D

Hace tiempo que no andaba por estos rumbos .....   :D

Tengo que hacer un pagina en dos idiomas ( español e ingles) y queria saber si habia alguna otra opcion aparte de hacer dos pagina por cada una (una en cada idioma), osea una pagina "Quienes somos" en español e Ingles

GRacias por la ayuda y sugerencias

Saludos a todos  y.....
The force will be with you .....  ;D


Título: Re: Pagina en dos idiomas
Publicado por: Casidiablo en 12 Abril 2008, 01:18 am
Claro! Por lo general lo que se hace es crear archivos PO (y posteriormente MO) que contienen el texto de la página en un idioma en especial. Luego, desde los scripts PHP se llama a una función que defines tu, que de acuerdo al lenguage de preferencia del usuario, muestra la página en uno u otro idioma.

Para la edición de los PO puedes usar POEDIT:

http://www.poedit.net/

Info interesante:

http://www.gnu.org/software/gettext/gettext.html


Título: Re: Pagina en dos idiomas
Publicado por: jamarchi en 12 Abril 2008, 03:11 am

Hola Casidiablo

Gracias por la respuesta ..... :D

Estuve leyendo y viendo la informacion de los link que pusiste pero la verdad es que quede bastante perdido....   :-(

Alguna otra sugerencia .....  :huh:

Gracias :D


Título: Re: Pagina en dos idiomas
Publicado por: Libransser en 15 Abril 2008, 01:30 am
Por ejemplo, si tienes una página y tienes que hacer una versión de ella para dos idiomas, suponiendo que ésta es tu página:

Archivo pagina.php
Código:
Hola

Aquí hablo de blablabla

Saludos

Puedes separar el contenido en un archivo que guarde el texto en el idioma correspondiente. Puedes ver que el texto del código lo podríamos dividir en saludo, cuerpo y firma.

Entonces puedes tener el archivo donde mantengas el texto en español así:

Archivo es.php
Código
  1. <?php
  2. $idioma['saludo'] = 'Hola';
  3. $idioma['cuerpo'] = 'Aquí hablo de blablabla';
  4. $idioma['firma'] = 'Saludos';
  5. ?>
  6.  

y el de inglés así:

Archivo en.php
Código
  1. <?php
  2. $idioma['saludo'] = 'Hello';
  3. $idioma['cuerpo'] = 'Here I talk about blablabla';
  4. $idioma['firma'] = 'Greetings';
  5. ?>
  6.  

Y tu página original quedaría entonces algo como esto:

Código
  1. <?php
  2. $lang = $_GET['language'];
  3. if($lang == 'es')
  4.  include('es.php');
  5. elseif($lang == 'en')
  6.  include('en.php');
  7.  
  8. echo $idioma['saludo'];
  9. echo $idioma['cuerpo'];
  10. echo $idioma['firma'];
  11. ?>
  12.  

Y no tendrías que manejar dos archivos diferentes con lo mismo excepto el texto en determinado idioma.

Saludos
Arwing