Кроме translate.csv
непереносимого встроенного перевода есть другой способ. Я делаю это так.
Каждый модуль поддерживает более одного файла перевода.
Если вы добавите это в config.xml
:
<translate>
<modules>
<[Namespace]_[Module]>
<files>
<default>[Namespace]_[Module].csv</default>
<alternative>[Namespace]_[Module]_version2.csv</alternative>
</files>
</[Namespace]_[Module]>
</modules>
</translate>
оба файла [Namespace]_[Module].csv
и [Namespace]_[Module]_version2.csv
будут загружены для перевода.
и они будут обработаны в порядке, в котором они объявлены.
Так что если вам нужно, например, добавить / изменить что-то в Mage_Sales.csv
файле не редактировать, просто создайте модуль, который добавляет другой файл в список файлов перевода.
Что-то вроде этого:
app/code/local/Easylife/Sales/etc/config.xml
<?xml version="1.0"?>
<config>
<modules>
<Easylife_Sales>
<version>0.0.1</version>
</Easylife_Sales>
</modules>
<frontend>
<translate>
<modules>
<Mage_Sales>
<files>
<alternative>Easylife_Sales.csv</alternative>
</files>
</Mage_Sales>
</modules>
</translate>
</frontend>
<adminhtml>
<translate>
<modules>
<Mage_Sales>
<files>
<alternative>Easylife_Sales.csv</alternative>
</files>
</Mage_Sales>
</modules>
</translate>
</adminhtml>
</config>
и убедитесь, что модуль зависит от Mage_Sales
.
Вы также можете создать модуль «один размер подходит всем» для управления переводом. Просто добавьте альтернативный файл перевода для любого модуля, который вам нужен, и убедитесь, что этот новый модуль зависит от всех них.