Comment Magento traduire des œuvres?
Je veux traduire un frontend boutique Magento en utilisant un seul fichier csv. J'ai donc fait ceci:
J'ai créé un module personnalisé appelé Traducteur. Dans son config.xml j'ai mis ces lignes:
<config>
....
<translate>
<modules>
<MyPackage_Translator>
<files>
<default>MyPackage_Translator.csv</default>
</files>
</MyPackage_Translator>
</modules>
</translate>
</config>
Ensuite, j'ai créé de défaut Data.php aide dans mon Helper dossier.
Puis dans app/locale/de_DE j'ai créé le MyPackage_Translator.fichier csv dans lequel j'ai mis toutes mes chaînes.
Maintenant, si dans un phtml(quel que soit le module) de fichier, si je fais quelque chose comme:
echo $this->__('My string');
ça fonctionne très bien. Mais je suis curieux, pourquoi ne Magento regarde dans le MyPackage_Translator.csv pour la chaîne?
J'ai aussi remarqué que si je suis en utilisant $this->__('une chaîne de caractères'); dans le module Client, Magento va d'abord regarder dans app/locale/de_DE/Mage_Customer.fichier csv pour la chaîne, et s'il ne trouve pas la chaîne de là, puis il va chercher dans mon MyPackage_Translator.fichier csv. Pourquoi est-ce? Pourquoi il n'a pas l'air dans Enterprise_Customer.fichier csv par exemple?
Quelqu'un peut-il m'expliquer le flux de travail Magento ne quand il est à la recherche pour le fichier de traduction?
Vous devez vous connecter pour publier un commentaire.
Lorsque vous appelez $this->__('texte');
Vous pouvez commencer par regarder
Mage_Core_Helper_Abstract
Suivant est
Mage_Core_Model_App
Qui est remis à
Mage_Core_Model_Translate
qui retourne le texte qui en résulte. C'est une promenade rapide à travers de comment le tout serait géré, vous devez considérer les classes elles-mêmes pour obtenir une compréhension plus approfondie.