1. ¿Buscando un Banco para abrir tu primera cuenta de ahorros? Revisa nuestro comparativo de cuentas cero mantenimiento haciendo clic aquí.
    Ocultar anuncio

página php multilenguaje

Publicado en 'Webmasters' por UnProgramador, 23 Dic 2009.





  1. UnProgramador

    UnProgramador Miembro nuevo

    Registro:
    18 Dic 2009
    Mensajes:
    27
    Likes:
    0




    buenas, soy medio novel en esto del php y tengo que hacer una pag que se pueda leer en más de un idioma... que framework, metodologia o manera de hacerlo me recomiendan??

    gracias.
     


  2. fx007

    fx007 Miembro nuevo

    Registro:
    4 Jun 2009
    Mensajes:
    30
    Likes:
    1
    Bajate algun CMS e intenta ver como funciona.
     
  3. MijT

    MijT Miembro de bronce

    Registro:
    12 Oct 2006
    Mensajes:
    1,106
    Likes:
    63
    Lo más rápido que puedes hacer es hacer tu página sólo en español o sólo en inglés y usar el traductor de Google para traducir la página a otro/s idioma/s, pero aquí la desventaja está en que el traductor es eso, un traductor, es decir, no interpreta las frases, en ese caso lo mejor es que tú generes los contenidos en tantos idiomas como desees, para ello deberás crear tantas tablas en MySQL (si es que la página es dinámica) como idiomas desees traducir el contenido.

    Si la página es estática, pues deberás escribir los textos en los idiomas deseados, y con un if mostrar el contenido según el idioma seleccionado, si no se ha seleccionado ninguno o si se ingresa por primera vez a la página muestras el texto en un idioma por defecto (español, inglés, etc.).
     
  4. Fumador

    Fumador Miembro frecuente

    Registro:
    22 Jun 2009
    Mensajes:
    162
    Likes:
    10
    bueno un framework sería un poco exagerado decirlo. Puedes crearte una clase que te reciba el idioma y con las funciones vas traduciendo las secciones de tu pagina segun el valor seleccionado. Pero obviamente tienes que tomarte el trabajo de traducirlo.
     
  5. jobrien2001

    jobrien2001 Miembro maestro

    Registro:
    3 Ago 2009
    Mensajes:
    289
    Likes:
    18
    Puedes usar un script para que google lo haga por ti.. el resultado no es tan bueno.

    La otra es traducirlo tu mismo, y crear una variable que decida en que idioma el usuario vera la pagina... tambien lo puedes hacer por direccion IP.
     
    Última edición: 24 Dic 2009
  6. UnProgramador

    UnProgramador Miembro nuevo

    Registro:
    18 Dic 2009
    Mensajes:
    27
    Likes:
    0
    Muy buenas ideas, he instalado el joomla en mi hosting y he visto un par de opciones de lenguaje por ahí... pero para otra pag creo q usaré la alternativa de guardar mi contenido en tablas de BD

    slds y muchas gracias
     
  7. ilegant

    ilegant Miembro frecuente

    Registro:
    6 Nov 2009
    Mensajes:
    114
    Likes:
    0
    Si estas con php tienes que usarpor no decir estas obligado a usar las opciones que de da el mismo PHP para esto, nada que if o traductor google.
    Pare tener una pagina web bien hecha debes tener tus contenidos bien fluidos en los idiomas que deseas y luego usar esto.

    http://www.mclibre.org/consultar/php/lecciones/php_gettext.html

    Y para los que aun estan perdidoes tambien revisen ese link porfavor.

    Ojo que es solo para PHP.

    Saludos.
     
  8. UnProgramador

    UnProgramador Miembro nuevo

    Registro:
    18 Dic 2009
    Mensajes:
    27
    Likes:
    0
  9. ViV

    ViV Miembro nuevo

    Registro:
    6 Feb 2010
    Mensajes:
    1
    Likes:
    0
    Hola, yo hice varios sitios multilenguaje. Se ejecuta rápido y es muy fácil de implementar, así que te cuento lo que hice. El código te lo escribo en ASP pero no importa cual es el lenguaje que vos usás ya que el código es muy fácil de traducir (en ASP.NET el código es casi identico, salvo por el SET que usé para crear el diccionario que habría que sacarlo):


    1) Creo una BD con una tabla que tiene los textos de la interfase, con los siguientes campos:
    • Txt: nombre que le doy a cada segmento de texto que quiero que cambie de idioma (por ejemplo "Titulo1", "Presentación", "Comentario1", etc.)
    • Txt_01: texto en el idioma 01
    • Txt_02: texto en el idioma 02
    • ...... etc
    2) Al llamar a cada página le paso como parámetro el idioma que quiero que tenga (por ejemplo, si fuera por GET, sería mipagina.asp?idioma=01)

    3) Al inicio de la página hago una query similar a este:
    "SELECT Txt, Txt_" & idioma & " FROM mitabladeidiomas"

    4) y creo un objeto Diccionario al que relleno con los registros de la tabla (si usás otro idioma este objeto se podría reemplazar con una martiz)

    dim mitx
    set mitx = CreateObject("Scripting.Dictionary")
    do while not rstemp.eof
    Txt=rstemp("Txt")
    Txtidioma=rstemp("Txt_" & idioma)
    mitx.Add Txt, Txtidioma
    rstemp.movenext
    loop

    5) Una vez que la página está diseñada, reemplazo los diferentes segmentos de texto por: <%=tx("Titulo1")%> <%=mitx("Presentacion")%> etc.

    Eso es todo, espero que te resulte útil. Saludos

    ----- mensaje añadido, 06-feb-2010 a las 17:41 -----

    perdón, donde dice:
    <%=tx("Titulo1")%>

    debe decir
    <%=mitx("Titulo1")%>
     
  10. loboweb

    loboweb Miembro frecuente

    Registro:
    12 Dic 2009
    Mensajes:
    82
    Likes:
    4
    yo se crear paginas en varios lenguajes incluso llegue a hacer en chino, me avisas.