W miarę upływu czasu główny zespół Magento dodawał do pakietu coraz więcej domyślnych pakietów językowych
app/locale
teczka. Czy istnieje kanoniczny sposób zarządzania własnymi plikami tłumaczeń, aby nie zakłócały przyszłych aktualizacji systemu? tzn. chcę zmienić niektóre etykiety w Magento, więc dokonuję edycji
app/locale/en_US/Mage_Sales.csv
bezpośrednio. Jeśli zaktualizujemy Magento, moje zmiany zostaną usunięte. Czy wystarczają do tego ustawienia regionalne motywu? (czy obsługuje specyficzne dla modułu pliki, czy po prostu translate.csv
). A może lepiej przepisać modele tłumaczenia, aby załadować pliki z innej lokalizacji? Albo coś innego?
module
localisation
Alan Storm
źródło
źródło
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
: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
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.
źródło
app/locale/**/Easylife_Sales.csv
do tego pliku? Zakładam, że pozwoli również na podfoldery, o ile znasz separator katalogów dla swojego systemu plików?Znajdujące się w nim pliki CSV
app/locale
należy traktować jako pliki podstawowe, a nie modyfikować. Uważam, że najlepszym sposobem na dodanie niestandardowego tłumaczenia jest włożenie goapp/design/frontend/{package}/{theme}/locale/{locale}/translate.csv
Pamiętaj, że możesz używać nazw modułów również w
translate.csv
plikach, używając"Mage_Adminhtml::Sales","Sales"
zamiast"Sales","Sales"
. Pozwala to również na korzystanie z tłumaczeń dostosowanych do konkretnych tematów.źródło
app/locale/
, jak mam to powiedzieć zapp/design/frontend/{package}/{theme}/locale/
tego miejsca? Zobacz moje pytanie tutaj: stackoverflow.com/questions/26554195/...Możesz edytować / tworzyć specyficzne dla projektu / motywu „translate.csv”. Aby zastąpić tłumaczenie z „modułu-pliku-tłumaczenia”. na przykład „Mage_Catalog.csv”:
Zatem reguła to „Modułowa przestrzeń nazw :: ciąg do przetłumaczenia”, „przetłumaczony ciąg”. Myślę, że to ostatni obieg pracy tłumaczenia reguły Magento.
źródło
W SemExpert robimy dokładnie to. Posiadamy własny pakiet tłumaczeń es_AR (z plikami CSV i szablonami e-mail), a następnie wszystkie dostosowania są wykonywane przez translate.csv lub przez funkcję tłumaczenia wbudowanego (w bardzo rzadkich przypadkach użytkownika końcowego).
Nie ryzykujemy (na razie) utraty plików tłumaczeń z powodu aktualizacji Magento, ponieważ jest bardzo mało prawdopodobne, aby kiedykolwiek obsługiwały es_AR po wyjęciu z pudełka, ale cierpimy z powodu Magento wprowadzającego niewielkie zmiany w swoich ciągach znaków (np. Dodając „.” Na koniec zdania), które powodują, że angielskie ciągi pojawiają się, gdy się ich najmniej spodziewasz.
Zacząłem opracowywać mały moduł do monitorowania ciągów tłumaczeń, z którego korzystamy przy każdej nowej wersji Mage. Można go znaleźć tutaj: https://github.com/barbazul/SemExpert_TranslationDoctor
źródło