Ich möchte einen Frontend-Magento-Store mit nur einer CSV-Datei übersetzen. Also habe ich das getan:Wie funktioniert Magento?
Ich habe ein benutzerdefiniertes Modul namens Translator erstellt. In seiner config.xml habe ich diese Zeilen setzen:
<config>
....
<translate>
<modules>
<MyPackage_Translator>
<files>
<default>MyPackage_Translator.csv</default>
</files>
</MyPackage_Translator>
</modules>
</translate>
</config>
Dann habe ich de Standard data.php Helfer in meinem Helper Ordner erstellt.
Dann in app/locale/de_DE Ich habe die MyPackage_Translator.csv Datei erstellt, wo ich alle meine Strings.
Wenn nun in einem phtml (unabhängig vom Modul-Datei), wenn ich etwas tun:
echo $this->__('My string');
es funktioniert ziemlich gut. Aber ich bin Kurios warum sieht Magento in der MyPackage_Translator.csv für die Zeichenfolge?
Ich bemerkte auch, dass, wenn ich $ this verwende -> __ ('einige Zeichenfolge'); Im Kundenmodul sucht Magento zuerst in der Datei app/locale/de_DE/Mage_Customer.csv nach der Zeichenfolge. Wenn die Zeichenfolge dort nicht gefunden wird, wird sie in meiner Datei MyPackage_Translator.csv gesucht. Warum das? Warum sieht es beispielsweise nicht in der Datei Enterprise_Customer.csv aus?
Kann mir jemand den Workflow erklären, den Magento macht, wenn er nach der Übersetzungsdatei sucht?
Vielleicht können Sie direkt bei Mage_Core.csv übersetzen –
Ich würde eine solche Aktion nicht empfehlen, da es nicht empfohlen wird, eine der Kerndateien, die Magento bietet, zu ändern. Es wäre kein Upgrade-Beweis. Er bewegte sich in die richtige Richtung mit dem Überladen der Kernklasse für Übersetzen. –
Ich meine, benutze die Mage_Core.csv in deiner Sprache. Das ursprüngliche nicht überschreiben. –