Prestashop – Traducciones imposibles

Básicamente todo Prestashop se puede traducir desde Localización > Traducciones (la mayoría en el Front Office y en los módulos instalados, ya sean del tema o los generales que tenemos instalados y estemos usando).

Pero aún con esto siempre están los típicos textos que no se dejan traducir fácilmente y tenemos que buscar recursivamente por nuestro Prestashop. Una vez encontrados, la mayoría los encontramos en archivos .tpl y no estan integrados en la traducción general.

Ahora podemos hacer diferentes cosas para traducir estos .tpl (smarty archives):

1.- Generar una traducción manual

Necesitamos encriptar el texto a traducir, por ejemplo desde: http://www.md5.net/md5-generator/.

Encriptamos por ejemplo la cadena de texto: “página no encontrada” , lo pegamos en el campo y nos genera el siguiento código: 6cfd0b6b00e5a1e915244c98f28091c0

Ahora ya lo podemos añadir al archivo general de traducciones de la plantilla con el formato:

$_LANG[‘404_6cfd0b6b00e5a1e915244c98f28091c0’] = ‘página no encontrada‘;

Para hacer la llamada desde nuestro .tpl, se hará así:

{l s=’página no encontrada‘}

2.- Esta manera es simple, pero no válida para más de un idioma en nuestro Prestashop, y se trata de editar el archivo .tpl que necesitemos, podemos cambiar directamente la cadena:

{l s=’página no encontrada‘}    –>    {l s=’page not found‘}

El problema que surge aquí es que si no lo hemos definido como he explicado en el punto anterior (1), solo tendremos una traducción y si queremos usar múltiples idiomas, en todos se verá igual, es decir, aun cambiando el idioma siempre aparecerá lo que hemos puesto en el .tpl ( en nuestro caso “page not found” aún estando en iso/es).

3.- La manera más fácil,  editando el archivo .tpl que necesitemos, cambiando la cadena y asignándola al módulo:

{l s=’página no encontrada‘ mod=’nombre_del_modulo’}   

 De esta manera ya lo tendremos en el módulo para poderlo traducir desde Localización > Traducciones > Módulos instalados

4.- La manera más rápida (aunque un poco más desorganizada):

{if $lang_iso ==’ca’}Pàgina no trobada{elseif $lang_iso ==’es’}Página no encontrada{else}Page not found{/if}

De esta manera ponemos las traducciones directamente con los códigos iso pertinentes y ya tenemos todo traducido a nuestro gusto.

NOTA!!! – Seguramente si con esto aún tenéis algo que no se deja traducir, ya quedan muy pocas posibilidades: o es la edición básica en el back end y  nos la hemos saltado, o viene directamente de la configuración del localismo, por ejemplo:

{$post.created|date_format:”%A, %B %e, %Y”}  –> dónde el día y el més se importaran dependiendo del localismo configurado en el equipo (navegador), y nos puede salir un idioma que no nos interesa.

 

Artículos relacionados

Prestashop – Asignar métodos de pago/reserva... En Prestashop, simpre no surge el problema de que sistemas de pago necesitamos para las diferentes opciones de envío. Tambíes es recurrente la necesid...
Validadores web Algunas herramientas online y gratuitas que te ayudarán a validar algunos apartados de tu web Comprobar enlaces rotos Listado propiedades CSS que ...
Prestashop – ¿No se guardan las modificacion...   Hay un error en la programación de Prestashop, que según que combinaciónes de módulos hay, no deja que se guarden las modificaciones de los pr...
jQuery – Drag & Drop – 2 plugins Os dejo dos plugins que os puede ser de ayuda para el tratamiento del arrastre (drag & drop) de objetos: Draggabilly Permite arrastra solo en de...

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

*