Con el paso del tiempo, el equipo central de Magento ha agregado más y más paquetes de idiomas predeterminados a
app/locale
carpeta. ¿Existe alguna forma canónica de administrar sus propios archivos de traducción de manera que no interfieran con futuras actualizaciones del sistema? es decir, quiero cambiar algunas etiquetas en Magento, así que edito
app/locale/en_US/Mage_Sales.csv
directamente. Si actualizamos Magento, mis cambios serán eliminados. ¿Es suficiente la función de configuración regional del tema para esto? (¿maneja archivos específicos del módulo, o simplemente? translate.csv
) ¿O es mejor reescribir los modelos de traducción para cargar archivos desde una ubicación diferente? ¿O algo mas?
fuente
Además de la
translate.csv
traducción en línea no portátil, hay otra forma. Lo hago asiCada módulo admite más de un archivo de traducción.
Si agrega esto en
config.xml
:ambos archivos
[Namespace]_[Module].csv
y se[Namespace]_[Module]_version2.csv
cargarán para su traducción.y se procesarán en el orden en que se declaran.
Entonces, si necesita, por ejemplo, agregar / modificar algo en el
Mage_Sales.csv
no edite el archivo, simplemente cree un módulo que agregue otro archivo a la lista de archivos de traducción.Algo como esto:
app/code/local/Easylife/Sales/etc/config.xml
y asegúrese de hacer que el módulo dependa
Mage_Sales
.También puede crear un módulo "talla única" para gestionar la traducción. Simplemente agregue un archivo de traducción alternativo para cualquier módulo que necesite y asegúrese de que este nuevo módulo dependa de todos ellos.
fuente
app/locale/**/Easylife_Sales.csv
este archivo? Supongo que también permitirá subcarpetas siempre que conozca el separador de directorio para su sistema de archivos.Archivos CSV ubicados en
app/locale
deben considerarse como archivos principales y no modificados. Creo que la mejor manera de agregar una traducción personalizada es ponerlas enapp/design/frontend/{package}/{theme}/locale/{locale}/translate.csv
Tenga en cuenta que también puede usar nombres de módulos en
translate.csv
archivos en"Mage_Adminhtml::Sales","Sales"
lugar de"Sales","Sales"
. Esto también le permite utilizar traducciones personalizadas para temas específicos.fuente
app/locale/
, ¿cómo le digo que lo cargueapp/design/frontend/{package}/{theme}/locale/
? Vea mi pregunta aquí: stackoverflow.com/questions/26554195/…Puede editar / crear el diseño / tema específico "translate.csv". Para anular una traducción de un "módulo-traducción-archivo". por ejemplo "Mage_Catalog.csv":
Entonces la regla es "Módulo de espacio de nombres :: cadena a traducir", "cadena traducida". Creo que es la última regla del flujo de trabajo de traducción de Magento.
fuente
En SemExpert hacemos exactamente eso. Tenemos nuestro propio paquete de traducción es_AR (con archivos CSV y plantillas de correo electrónico) y luego todas las personalizaciones se realizan mediante translate.csv o mediante la función de traducción en línea (en casos muy raros de usuario final).
No nos arriesgamos (por ahora) a perder archivos de traducción debido a la actualización de Magento, ya que es muy poco probable que alguna vez admitan es_AR, pero sí sufrimos de Magento haciendo pequeños cambios en sus cadenas (como agregar un '.' En el final de una oración) que hace que aparezcan las cadenas en inglés cuando menos las espera.
He comenzado a desarrollar un pequeño módulo para monitorear cadenas de traducción que usamos cada vez que se lanza una nueva versión de Mage. Puede encontrarlo aquí: https://github.com/barbazul/SemExpert_TranslationDoctor
fuente