yannick33 Posted November 10, 2010 Share Posted November 10, 2010 Bonjour, je suis développeur logiciel/webj'ai consulté le document technique afin de créer un module.J'ai un soucis en ce qui concerne "l'utilisation de smarty" page 36 du document technique.J'ai écris exactement mot pour mot ce qu'il y a dans la doc et pourtant le message "Welcome to my shop" ne s'affiche pas sur l'url "localhost/prestashop/mymodule/page_mymodule.php"Par contre, j'ai la possibilité de traduire "Welcome to my shop" via le back office ce qui voudrait dire que smarty accepte {$messageSmarty} du fichier page_mymodule.tpl. J'ai également introduit {debug} mais rien n'y fait.J'ai vérifié, revérifié, testé et resteté ...La méthode présentée en page 34 et 35 fonctionne correctement et la méthode {debug} fonctionne également. Meme s'il me semble y avoir une erreur dans le code du fichier "mymodule.tpl": le lien pointe sur ../mymodule/page.php et je pense qu'il s'agit plus de ../mymodule/page_mymodule.phpsi on suit la logique du document technique qui propose ensuite de créer un fichier page_mymodule.phpQuelqu'un pourrait-il m'éclairer sur l'utilisation de smarty dans le cas concret du document technique, svp?!Cordialement,Yannick33 Link to comment Share on other sites More sharing options...
coeos.pro Posted November 10, 2010 Share Posted November 10, 2010 Bonjour, j'ai regardé page 36 les 10 lignes de codes (au milieu de la page) mais je ne comprend pas pourquoi “Welcome to my shop” devrait s’afficher sur l’url.$smarty->assign('messageSmarty',$message) signifie que l'on transmet la variable $message dans le fichier tpl (mymodule_page.tpl) où la variable s'appellera messageSmarty et qui sera affichable en mettant {$messageSmarty}Quand vous voyez dans le fichier php: l('Title : ') ceci signifie qu'il va afficher dans la partie admin: 'Title :' et que ceci est traduisible avec le fichier fr.php Si vous avez {l s='Title :'} dans un fichier tpl alors 'Title : ' sera affiché tel que, sauf si il est traduit Link to comment Share on other sites More sharing options...
yannick33 Posted November 11, 2010 Author Share Posted November 11, 2010 Bonjour, en fait je me suis mal exprimé lorsque j'ai dit que Welcome to my site devrait s'afficher sur l'url page_mymodule.php.Dans la doc, on nous propose de créer un module Welcome contenant un lien Click Me !En cliquant sur ce lien, j'arrive sur la page page_mymodule.php qui fait appel à la vue page_mymodule.tplDans ce dernier fichier, j'ai bien mis {$messageSmarty} et pourtant rien ne s'affiche.J'ai bien modifié page_module.php comme dit dans la documentation.Je travaille en local. Dois je faire attention a la configuration de Smarty ?Si ce message ne vous rien apporté comme informations supplémentaires au sujet de mon erreur, veuillez me le signaler. Cordialement,Yannick33 Link to comment Share on other sites More sharing options...
coeos.pro Posted November 11, 2010 Share Posted November 11, 2010 Testez dans votre fichier tpl:{if $messageSmarty}{$messageSmarty}{else}Pas de message{/if}si vous n'avez le message enregistré attendu (Welcome to my shop), essayez aussi avec $smarty->assign(‘messageSmarty’,'Voici un message') dans le fichier phpEDIT : je crois que j'ai compris l'erreur :page 36 : on assigne une valeur ($message) à messageSmarty dans le fichier my_module_page.php, et cette valeur peut être affichée via le fichier my_module_page.tpl ET SEULEMENT CELUI CI, si dans my_module_page.tpl vous avez un lien qui renvoi sur une autre page alors messageSmarty est "perdu". Link to comment Share on other sites More sharing options...
yannick33 Posted November 18, 2010 Author Share Posted November 18, 2010 Bonsoir, merci pr ces informations.Je n'ai pas eu le temps de tester la solution proposée cette semaine.Je pense pouvoir le faire ce week-end. Je vous tiens au courant du résultat.Cordialement, Yannick33 Link to comment Share on other sites More sharing options...
gtrennert Posted December 4, 2010 Share Posted December 4, 2010 Bonjour,J'ai rencontré le même problèmeil semblerait que la ligne 5 du fichier mymodule_page.tpl soit en cause : include(‘MyModule.php');car en la remplaçant par :include(dirname(__FILE__).'MyModule.php'); l'exemple fonctionne à nouveauCordialement - Gustav95 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