Com o passar do tempo, a equipe principal do Magento adicionou mais e mais pacotes de idiomas padrão ao
app/locale
pasta. Existe uma maneira comum de gerenciar seus próprios arquivos de tradução, de modo que eles não interfiram nas futuras atualizações do sistema? ou seja, eu quero mudar alguns rótulos no Magento, então eu edito
app/locale/en_US/Mage_Sales.csv
diretamente. Se atualizarmos o Magento, minhas alterações serão apagadas. O recurso de localidade do tema é suficiente para isso? (ele lida com arquivos específicos do módulo ou apenas translate.csv
). Ou é melhor reescrever os modelos de tradução para carregar arquivos de um local diferente? Ou alguma outra coisa?
fonte
Ao lado da
translate.csv
tradução inline e não portátil, existe outra maneira. Eu faço assim.Cada módulo suporta mais de um arquivo de tradução.
Se você adicionar isso em
config.xml
:ambos os arquivos
[Namespace]_[Module].csv
e[Namespace]_[Module]_version2.csv
serão carregados para tradução.e eles serão processados na ordem em que são declarados.
Portanto, se você precisar, por exemplo, adicionar / modificar algo no
Mage_Sales.csv
arquivo não edite, basta criar um módulo que adicione outro arquivo à lista de arquivos de tradução.Algo assim:
app/code/local/Easylife/Sales/etc/config.xml
e certifique-se de fazer o módulo depender
Mage_Sales
.Você também pode criar um módulo "tamanho único" para gerenciar a tradução. Basta adicionar um arquivo de tradução alternativo para qualquer módulo necessário e verifique se esse novo módulo depende de todos eles.
fonte
app/locale/**/Easylife_Sales.csv
este arquivo? Presumo que ele também permita subpastas, desde que você conheça o separador de diretório para o seu sistema de arquivos?Os arquivos CSV localizados em
app/locale
devem ser considerados como arquivos principais e não modificados. Acho que a melhor maneira de adicionar tradução personalizada é colocá-las emapp/design/frontend/{package}/{theme}/locale/{locale}/translate.csv
Observe que você também pode usar nomes de módulos em
translate.csv
arquivos, em"Mage_Adminhtml::Sales","Sales"
vez de"Sales","Sales"
. Isso também permite que você use traduções personalizadas para temas específicos.fonte
app/locale/
, como eu digo para ele carregarapp/design/frontend/{package}/{theme}/locale/
? Veja minha pergunta aqui: stackoverflow.com/questions/26554195/…Você pode editar / criar o design / tema específico "translate.csv". Para substituir uma tradução de um "arquivo de tradução de módulo". por exemplo "Mage_Catalog.csv":
Portanto, a regra é "Namespace do módulo :: string a ser traduzida", "string traduzida". Eu acho que é a última regra do fluxo de trabalho de tradução do Magento.
fonte
Na SemExpert, fazemos exatamente isso. Temos nosso próprio pacote de tradução es_AR (com arquivos CSV e modelos de email) e, em seguida, todas as personalizações são feitas pelo translate.csv ou pelo recurso de tradução embutida (em casos muito raros de usuário final).
Não corremos o risco (por enquanto) de perder arquivos de tradução devido à atualização do Magento, pois é muito improvável que eles suportem o es_AR imediatamente, mas sofremos com o Magento fazendo pequenas alterações em suas strings (como adicionar um '.' Em final de uma frase) que fazem as strings em inglês aparecerem quando você menos espera.
Comecei a desenvolver um pequeno módulo para monitorar as strings de tradução que usamos sempre que uma nova versão do Mage é lançada. Você pode encontrá-lo aqui: https://github.com/barbazul/SemExpert_TranslationDoctor
fonte