Traducciones en Magento

Magento como framework cuenta con un sistema de traducciones muy eficiente y modular, es decir, cuando intentamos realizar una traducción, Magento la busca directamente en el módulo correspondiente en que estemos trabajando o el que le estemos solicitando.

Existen dos formas principales de hacer una traducción; indicando de qué módulo queremos la traducción o no.

Para indicarle a Magento de que módulo buscar el archivo de traducción, lo hacemos mediante el helper de dicho módulo:

<?php

Mage::helper(‘checkout’)->__(‘Some translation’);

En este caso Magento busca en el módulo del helper que instanciamos el archivo de traducción definido en el archivo de configuración conf.xml.

La segunda forma es:

<?php

$this->__(‘Some translation’);

En este caso Magento usa el archivo de traducción asociado al módulo en el que se esté ejecutando la instrucción.

Estas formas de traducción funcionan cuando trabajamos en el back End de nuestra tienda, pero si trabajamos con Javascript en el front, resultan inservibles estas funciones, a menos que las hagamos directo en un archivo phtml, pero si queremos realizar traducciones en un archivo js, Magento nos proveé una clase para ello, basta con instanciar la clase Translator y su método translate

Translator.translate(‘Some translation’);

Para lograr que Magento encuentre la traducción, ésta debe estar en su correspondiente archivo de traducción y definida en un archivo jstranslator.xml dentro de la carpeta etc de nuestro módulo con la siguiente estructura:

<jstranslator>

<custom_label translate=”message” module=”myModule”><message>Some translation</message></custom_label>

</jstranslator>

De esta forma Magento carga todas las traducciones existentes en los archivos jstranslator en la clase Translator y podemos hacer traducciones en directo en javascript

En algunos casos Magento no sabe de qué archivo tomar las traducciones, para forzarlas, en el archivo de traducción le podemos indicar a qué módulo corresponde dicha traducción de la siguiente forma:

“MyCompany_MyModule::Some translation”,”Alguna traducción”

En Pengo Stores – Apasionados del E-Commerce siempre nos mantenemos al tanto de las tendencias mundiales para ofrecer a nuestros clientes soluciones integrales de comercio electrónico.

Autor: Santiago González Muñoz
Desarrollador Certificado Magento
santiago@pengostores.com  

 

Santiago González Muñoz
This entry was posted in Uncategorized and tagged , , , , , , , , , , . Bookmark the permalink.

Leave a Reply

Your email address will not be published. Required fields are marked *

*

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>