Antoniolav Posted April 2, 2015 Share Posted April 2, 2015 (edited) Bonjour, J'ai créer il y a maintenant plusieurs semaines un module pour ma boutique e-commerce. L'objectif était simple : avoir un slider Jquery sur la homepage. Le module a donc été créer de manière assez "rudimentaire" : un dossier sliderhome du côté racine avec son .php dedans, un autre dans le thème avec son .tpl pour l'affichage. Activation via mon Back office + accrochage sur le point d'accroche DisplayHome. Sur mon Prestashop j'ai 3 langues (FR, EN et DE) mais en réalité seul le FR est utilisé. Je suis en train de préparer le site pour une version Allemande et j'ai déjà traduis tous les champs du Front, Back etc... Dans le .TPL de mon module fait maison, j'ai remplacé pour tester une phrase par {l s='Mon titre de slide 1' mod='sliderhome1'} : impossible cependant de trouver le moyen de le traduire dans le back-office. Quand je vais dans Localisations > Traductions, puis je choisis "Traductions des modules installées, "mon thème", "Deutsh (German)", je repère bien mon module mais il ne m'est proposé que de modifier son nom et sa description ... mais pas la variable que j'ai inséré dans le .TPL. Bref, je suis bloqué. J'ai essayé de crée un dossier /translations/ dans le dossier du module côté thème, aucun changement. D'y créer un de.php vide, aucun changement. De vider le cache (dans Paramètres avancées > Performance), en vain. J'ai cherché sur le forum mais rien qui m'a aidé. La documentation officielle non plus. Quelques pistes pour éclairer ma lanterne ? Merci d'avance Edited April 2, 2015 by Antoniolav (see edit history) Link to comment Share on other sites More sharing options...
erouvier29 Posted April 2, 2015 Share Posted April 2, 2015 (edited) Si le TPL est dans le répertoire du module: Type de traduction = "Traductions des modules installés" + Sélectionnez votre thème = "Coeur (indépendant du thème)" Cordialement PS: C'est toujours le même module? ;-) [EDIT] Pardon, c'était une histoire dans les pages de commandes... Edited April 2, 2015 by erouvier29 (see edit history) Link to comment Share on other sites More sharing options...
Antoniolav Posted April 2, 2015 Author Share Posted April 2, 2015 (edited) Bonjour, en effet le problème de hier est réglé comme indiqué sur le topic qui lui est dédié. Encore merci à toi Pour cet problème-ci, votre solution ne marche pas : j'ai exactement la même fenêtre que celle mise en copie dans mon premier message ! Voilà l'arborescence de mon module : RACINE/MODULES/SLIDERHOME ... avec dedans : RACINE/MODULES/SLIDERHOME/sliderhome.php + RACINE/THEMES/MONTHEME/MODULES/SLIDERHOME ... avec dedans : RACINE/THEMES/MONTHEME/MODULES/SLIDERHOME/sliderhome.tpl C'est donc dans ce dernier .TPL que j'ai mis {l s='Mon titre de slide 1' mod='sliderhome1'} et pour lequel j'essaie de renseigner les traductions via le Back-office. J'ai tout essayé.. en vain. Merci d'avance Edited April 2, 2015 by Antoniolav (see edit history) Link to comment Share on other sites More sharing options...
erouvier29 Posted April 2, 2015 Share Posted April 2, 2015 (edited) OK, ton problème vient sans doute d'une incohérence dans les idetnifiants du module. Tu dois utiliser exactement le même nom pour le répertoire, le fichier PHP de la classe dérivée de Module, et les paramètres mod dans les TPL. Là tu sembles utiliser "sliderhome" vs "sliderhome1" (je suppose que les majuscules ne sont là que pour différencier répertoires et fichiers). Si cela est bien respecté, les TPL "versés" dans le thème sont effectivement traduisibles dans le cadre du thème, et ceux restés dans le module dans le cadre du coeur. Edited April 2, 2015 by erouvier29 (see edit history) 1 Link to comment Share on other sites More sharing options...
Antoniolav Posted April 2, 2015 Author Share Posted April 2, 2015 Bonjour à toi, en effet ! J'utilisais le même nom pour tout mais je ne le faisais pas pour le .TPL. Décidément, tu es toujours là pour me donner un coup de main Un grand merci à toi Link to comment Share on other sites More sharing options...
Antoniolav Posted April 3, 2015 Author Share Posted April 3, 2015 Bonjour, je "ré-ouvre" ce topic car il subsiste un petit problème : quand j'ai une apostrohpe dans la chaine en question (exemple -> {l s='Voilà l\'an de grâce' mod='sliderhome'} ), j'ai beau l'échapper avec un slash devant, ça n'a pas l'air de marcher et ça me fait sauter la traduction suivante qui du coup ne s'affiche pas dans le back office. Donc si j'ai dans mon .tpl 3 phrases à traduire dont la première contenant une apostrophe : <h1>{l s='Voilà l\'an de grâce !' mod='sliderhome'}</h1> <h3>{l s='une bonne nouvelle non ?' mod='sliderhome'}<h3> <br> <p>{l s='Nous vous proposons à cette occasion [...]' mod='sliderhome'}</p> ... La phrase "une bonne nouvelle non ?" saute et n’apparaît pas dans le BO, par contre la suivante apparait. Une idée ? Merci d'avance Link to comment Share on other sites More sharing options...
erouvier29 Posted April 10, 2015 Share Posted April 10, 2015 Bonjour, Avec beaucoup de retard: j'ai essayé de reproduire ton problème, et finalement constaté (puis confirmé en lisant le code) que les traductions n'étaient pas robustes au retours à la ligne. Par contre je n'ai pas eu de problème avec les apostrophes. A moins que ce ne soit déjà résolu, essaye peut-être en utilisant des doubles quotes pour encadrer la phrase et sans échapper les apostrophes. Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now