Magento : Traductions multilingues dans un même fichier
Voici un code qui vous permettra de traduire un template dans l’ensemble des langues du site dans une seule fonction.
C’est pratique notamment pour l’envoi de contenus emails traduits.
Dans le snippet ci-dessous la langue du template sera basé sur le store_id de la commande
foreach ( $orders as $order ) { //Pour bien gérer la traduction on change le store en fonction de la commande Mage::app()->setCurrentStore($order->getStoreId()); //Changement de store $locale = Mage::getModel('core/locale')->getLocaleCode(); // Récupération de la locale du store Mage::app()->getTranslator()->setLocale($locale); // Définition de la locale pour la traduction Mage::app()->getTranslator()->init('frontend', true); //Réinitialisation du cache de traduction //Création du block qui sera traduit dans la langue du store et stockage de son contenu dans une variable $layout = Mage::getSingleton('core/layout'); $contenu = $layout->createBlock('core/block') ->setTemplate('order.phtml' |
Magento : Traductions multilingues dans un même fichier Lire la suite »