Toutes les clefs pour réussir dans le e-commerce

Mes modules Prestashop

Utiliser “translate” dans vos classes sous prestashop

Il m’arrive de temps en temps d’avoir à traduire du texte directement dans une de mes classes lorsque je développe un module. C’est par exemple le cas si je veux générer un fichier PDF avec un nom de fichier correctement traduit. Voici donc comment bénéficier de la fonction de traduction dans vos classes, c’est très simple.

Rajoutez simplement dans votre classe la fonction suivante:


public static function l($string) {
   return Translate::getModuleTranslation('nomdumodule', $string, 'nomdufichier');
}

– “nomdumodule” est le nom de votre module sans majuscule.
– “nomdufichier” est le nom du fichier dans lequel vous vous trouvez, sans majuscule ni extension.

Si par exemple vous avez créé un module qui se nomme “MonSuperModule” et que vous travaillez dans la classe “MaSuperClass.php” votre fonction devra donc être:


public static function l($string) {
   return Translate::getModuleTranslation('monsupermodule', $string, 'masuperclass');
}

Ensuite il vous suffit de l’appeler ainsi:


MaSuperClass::l('My english text');

Poster un Commentaire

2 Commentaires sur "Utiliser “translate” dans vos classes sous prestashop"

Recevoir un email pour
avatar
Trier par:   plus récent | plus vieux | Plus de vote
Eolia
Invité
Eolia

Pour la 1.6, si vous ne voulez pas avoir de message d’erreur utiliser cette fonction:
public function l($string, $specific = false) {
return Translate::getModuleTranslation(‘nom_du_module_parent’, $string, ‘nom_du_fichier_classe_sans_.php’);
}

wpDiscuz