Melusine Posted April 1, 2014 Share Posted April 1, 2014 Bonjour Il faut que j'insère une requête sql dans mon product.tpl pour pouvoir y récupérer une variable d'un foreach. Mais dès que je met par ex : {php}echo "hello!"{/php} ça me fait une fatal error : Fatal error: Uncaught exception 'SmartyCompilerException' with message 'Syntax Error in template "/home/site/public_html/themes/site/product.tpl" on line 280 "{php}echo "hello!"{/php}" unknown tag "php"' in /home/site/public_html/tools/smarty/sysplugins/smarty_internal_templatecompilerbase.php:667 Stack trace: #0 /home/site/public_html/tools/smarty/sysplugins/smarty_internal_templatecompilerbase.php(453): Smarty_Internal_TemplateCompilerBase->trigger_template_error('unknown tag "ph...', 280) #1 /home/site/public_html/tools/smarty/sysplugins/smarty_internal_templateparser.php(2393): Smarty_Internal_TemplateCompilerBase->compileTag('php', Array) #2 /home/site/public_html/tools/smarty/sysplugins/smarty_internal_templateparser.php(3101): Smarty_Internal_Templateparser->yy_r37() #3 /home/site/public_html/tools/smarty/sysplugins/smarty_internal_templateparser.php(3201): Smarty_Internal_Templateparser->yy_reduce(37) #4 /home/site/public_html/tools/smarty/sysplugins/smarty_ in /home/site/public_html/tools/smarty/sysplugins/smarty_internal_templatecompilerbase.php on line 667 Et dans tools/smarty/Smarty.class.php j'ai mis public $allow_php_templates à true (au lieu de false). Je suis sur un Presta 1.5.6.2. J'avais déjà mis du php dans un presta 1.4.3. et je n'avais pas eu de pb.. Il y a une manip à faire pour que ça fonctionne ? Merci d'avance Link to comment Share on other sites More sharing options...
2FR3 Posted April 1, 2014 Share Posted April 1, 2014 http://www.smarty.net/docsv2/fr/language.function.php.tpl Link to comment Share on other sites More sharing options...
Melusine Posted April 1, 2014 Author Share Posted April 1, 2014 http://www.smarty.net/docsv2/fr/language.function.php.tpl ? Je fait bien {php}echo "hello!"{/php} mais ça ne fonctionne pas. Link to comment Share on other sites More sharing options...
Melusine Posted April 1, 2014 Author Share Posted April 1, 2014 Bon, j'ai fini par trouver une astuce : Pour forcer leur utilisation, il faut modifier le fichier config/smarty.config.inc.php :Aller aux lignes 29 à 33 : define('_PS_SMARTY_DIR_', _PS_TOOL_DIR_.'smarty/'); require_once(_PS_SMARTY_DIR_.'Smarty.class.php'); global $smarty; $smarty = new Smarty(); $smarty->setCompileDir(_PS_CACHE_DIR_.'smarty/compile'); Et changer les par : define('_PS_SMARTY_DIR_', _PS_TOOL_DIR_.'smarty/'); require_once(_PS_SMARTY_DIR_.'SmartyBC.class.php'); global $smarty; $smarty = new SmartyBC(); $smarty->setCompileDir(_PS_CACHE_DIR_.'smarty/compile'); Et voilà ça fonctionne ! 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