ibelenguer Posted October 12, 2012 Share Posted October 12, 2012 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 More sharing options...
nadie Posted October 12, 2012 Share Posted October 12, 2012 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 More sharing options...
nadie Posted October 12, 2012 Share Posted October 12, 2012 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 More sharing options...
nadie Posted October 12, 2012 Share Posted October 12, 2012 Estoy muy preocupado por usted. ¿Como ha ido todo? Link to comment Share on other sites More sharing options...
nadie Posted October 12, 2012 Share Posted October 12, 2012 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 More sharing options...
nadie Posted October 12, 2012 Share Posted October 12, 2012 Sigo estando muy preocupado por usted. Cuando usted pueda coméntame alguna novedad. PD: Creo que estoy hablando solo ) Link to comment Share on other sites More sharing options...
Carmina_069 Posted October 19, 2012 Share Posted October 19, 2012 señor nadie, no sabe como le estoy de agradecida tras haber culminado muchisimas horas de busqueda de forma satisfactoria Mercii Link to comment Share on other sites More sharing options...
nadie Posted October 19, 2012 Share Posted October 19, 2012 señor nadie, no sabe como le estoy de agradecida tras haber culminado muchisimas horas de busqueda de forma satisfactoria Mercii Un placer ayudarte y servirte ) Para cualquier duda estaremos por el foro para servirte y guiarte ) Link to comment Share on other sites More sharing options...
ibelenguer Posted October 19, 2012 Author Share Posted October 19, 2012 Hola nadie, Muy agradecido. Ha funcionado a la perfección. Finalmente lo necesitaba para un fichero TPL. Saludos Link to comment Share on other sites More sharing options...
delpo Posted March 10, 2013 Share Posted March 10, 2013 (edited) 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 March 10, 2013 by delpo (see edit history) 1 Link to comment Share on other sites More sharing options...
twister88888 Posted May 20, 2013 Share Posted May 20, 2013 A que se puede deber que un fichero .tpl, de un módulo de Slider no me capture el valor del idioma con esta orden {$lang_iso}. Un saludo y gracias. Link to comment Share on other sites More sharing options...
Recommended Posts