Jump to content

Código para detectar idioma actual


ibelenguer

Recommended Posts

Buenas,

 

Necesito añadir un código a mi tienda que haga lo siguiente:

 

if (idioma = INGLES) {

<span> Hello </span>

}

if (idioma = ESPAÑOL) {

<span> Hola </span>

}

 

En definitiva, lo que necesito es el código PHP que me permita detectar el idioma actual.

 

Sé que no es la opción óptima, porque en el futuro puede añadirse otro idioma, pero por falta de tiempo no sé como enfocarlo mejor.

 

Gracias de antemano

Link to comment
Share on other sites

Buenas,

 

Necesito añadir un código a mi tienda que haga lo siguiente:

 

if (idioma = INGLES) {

<span> Hello </span>

}

if (idioma = ESPAÑOL) {

<span> Hola </span>

}

 

En definitiva, lo que necesito es el código PHP que me permita detectar el idioma actual.

 

Sé que no es la opción óptima, porque en el futuro puede añadirse otro idioma, pero por falta de tiempo no sé como enfocarlo mejor.

 

Gracias de antemano

 

 

Si estuvieras editando un fichero *.tpl, depende un fichero *.php

 

En el fichero *.tpl, puedes jugar con esto:

 

{if $lang_iso == ‘es’}
{/if}

 

ect..

 

Pero te en cuenta, que eso no es lo correcto, si lo que quieres es traducir un texto.

 

Ejemplo a la hora de traducir un texto, en el tpl, tienes que indicar la palabra clave:

 

{l s='Palabra Clave'}

 

o

 

 

{l s='Palabra Clave' mod='name_modulo'}

 

Si fuera para el tpl de un modulo.

 

Y luego en el back-office puedes traducir esa palabra a los distintos idiomas. (Pestaña Herramientas -> Traducciones versiones anteriores a la 1.5, y en la 1.5 pestaña Localización -> Traducciones)

Link to comment
Share on other sites

Si no estas trabajando con un fichero *.tpl, y estas trabajando con un fichero *.php, tendras que obtener el id de la cookie del idioma en cuestión, como te muestro en el siguiente mensaje.

 

global $cookie;

 

$id_lang = $cookie->id_lang

 

Y luego con $id_lang haces la condicional en el php.

 

 

Pero como no se realmente que es lo que quieres hacer poco te puedo decir )

Link to comment
Share on other sites

Esto que te he comentado es para versiones anteriores anteriores a la 1.5 (Es decir para la 1.4)

 

Asi que es posible que para la 1.5 sea diferente, por ejemplo en la 1.5, para obtener en un fichero *.php el id del idioma, es asi:

 


$iso_code = $this->context->language->id;

Link to comment
Share on other sites

señor nadie, no sabe como le estoy de agradecida tras haber culminado muchisimas horas de busqueda de forma satisfactoria :P

 

Mercii :P

 

Un placer ayudarte y servirte )

 

Para cualquier duda estaremos por el foro para servirte y guiarte )

Link to comment
Share on other sites

  • 4 months later...

Hola,

 

en mi header.tpl quiero modificar manualmente mi title en función del idioma: tengo "es" y "en".

 

Si pongo esto falla, siguiendo el post:

 

{if $this->context->language->id == ‘es’}
<title>{'Mi título'}</title>
{/if}

{if $this->context->language->id == ‘en’}
<title>{'My title'}</title>
{/if}

 

 

Como has podido ver, lo quiero hacer funcionar en 1.5, en qué me equivoco? Porque al poner esto la página no carga.

 

Saludos.

 

EDITO:

Solución:

 

{if $lang_iso=="es"}
       <title>{'españa'}</title>
{elseif $lang_iso=="en"}
       <title>{'Inglaterra'}</title>
       {/if}

Edited by delpo (see edit history)
  • Like 1
Link to comment
Share on other sites

  • 2 months later...
Guest
This topic is now closed to further replies.
×
×
  • Create New...