Крім 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
.
Ви також можете створити модуль "один розмір для всіх" для управління перекладом. Просто додайте альтернативний файл перекладу для будь-якого потрібного вам модуля та переконайтеся, що цей новий модуль залежить від усіх них.