Oprócz translate.csv
i nieprzenośnego tłumaczenia wbudowanego jest jeszcze inny sposób. Robię to w ten sposób.
Każdy moduł obsługuje więcej niż jeden plik tłumaczenia.
Jeśli dodasz to w config.xml
:
<translate>
<modules>
<[Namespace]_[Module]>
<files>
<default>[Namespace]_[Module].csv</default>
<alternative>[Namespace]_[Module]_version2.csv</alternative>
</files>
</[Namespace]_[Module]>
</modules>
</translate>
oba pliki [Namespace]_[Module].csv
i [Namespace]_[Module]_version2.csv
zostaną załadowane do tłumaczenia.
i będą przetwarzane w kolejności, w jakiej zostały zadeklarowane.
Jeśli więc chcesz na przykład dodać / zmodyfikować coś w Mage_Sales.csv
pliku nie edytuj pliku, po prostu utwórz moduł, który dodaje inny plik do listy plików tłumaczeń.
Coś takiego:
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>
i upewnij się, że moduł zależy od Mage_Sales
.
Możesz również utworzyć moduł „jeden rozmiar dla wszystkich” do zarządzania tłumaczeniem. Po prostu dodaj alternatywny plik tłumaczenia dla każdego modułu, którego potrzebujesz i upewnij się, że ten nowy moduł zależy od nich wszystkich.