creaclaire Posted July 12, 2010 Share Posted July 12, 2010 Bonjour à tous, ça fait quelques mois que je me casse la tête pour trouver une "variable" mais je ne m'en sors pas. Peut être que quelqu'un dont c'est le metier ou un habitué pourra peut etre m'aider ?Je souhaite ecrire sur ma boutique Prestashop, un texte différent pour chaques pages : home, pages categories et sous categories, produits etc...Voici le code que j'ai rentré sur le header.tpl pour ma page d'accueil : {if $page_name == "index"} blabla {/if} cela fonctionne, le soucis c'st pour différencier chaques categories et sous categories (car je veux un texte different pour chaques)Quand je teste le code suivant, il s'affiche sur toutes les pages product, idem avec {if $page_name == "new-products"}... {if $page_name == "product"} blabla {/if} J'ai cherché pas mal de codes pour différencier les categorie et sous categorie avec des "id" mais rien ne fonctionne...Si quelqu'un pouvait m'éclairer ?Merci site :http://www.faire-party.com Link to comment Share on other sites More sharing options...
Divine Posted July 12, 2010 Share Posted July 12, 2010 Bonjour,Pour utiliser une variable avec les id, enlève le page-nameExemple: {if $id_product == 3 } blabla {/if} Link to comment Share on other sites More sharing options...
creaclaire Posted July 12, 2010 Author Share Posted July 12, 2010 Merci pour ta réponse Divine, j'avais testé ce code, mais il y a qq chose qui ne doit pas fonctionner ou que je fais mal...par ex : {if $id_product == 194 } Livre de Naissance {/if} En otant les page name..rien ne s'affiche.... Link to comment Share on other sites More sharing options...
Divine Posted July 12, 2010 Share Posted July 12, 2010 Ou places-tu ce code ?Peut-être que c'est simplement parce que la variable n'est pas déclarée à l'endroit où tu places le code. Link to comment Share on other sites More sharing options...
creaclaire Posted July 12, 2010 Author Share Posted July 12, 2010 Déclarée... bonne question ?Je pense que le plus simple c'est que je mette la page header.tplSi tu vois qq chose qui cloche ça serait sympa de me le dire. Pour etre franche ce n'est pas mon metier, et plus ça devient technique moins je m'en sors <html > <head> <base href="{$protocol}{$smarty.server.HTTP_HOST|escape:'htmlall':'UTF-8'}{$base_dir}" /> <title>{$meta_title|escape:'htmlall':'UTF-8'}</title> <meta name="google-site-verification" content="qb-zr6KCrz_eoAuxXiMweIXvuFYCj3mKkNxsHTKrnRA" /> {if isset($meta_description) AND $meta_description} <meta name="description" content="{$meta_description|escape:htmlall:'UTF-8'}" /> {/if} {if isset($meta_keywords) AND $meta_keywords} <meta name="keywords" content="{$meta_keywords|escape:htmlall:'UTF-8'}" /> {/if} <meta http-equiv="Content-Type" content="application/xhtml+xml; charset=utf-8" /> <meta name="generator" content="PrestaShop" /> <meta name="robots" content="{if isset($nobots)}no{/if}index,follow" /> <link rel="icon" type="image/vnd.microsoft.icon" href="{$img_ps_dir}favicon.ico" /> <link rel="shortcut icon" type="image/x-icon" href="{$img_ps_dir}favicon.ico" /> {if isset($css_files)} {foreach from=$css_files key=css_uri item=media} <link href="{$css_uri}" rel="stylesheet" type="text/css" media="{$media}" /> {/foreach} <!--[if IE 7]> <style type="text/css">@import url(themes/prestashop/css/ie7.css);</style> <!--[if IE 6]> <style type="text/css">@import url(themes/prestashop/css/ie6.css);</style> {/if} [removed][removed] [removed][removed] [removed] var baseDir = '{$base_dir}'; var static_token = '{$static_token}'; var token = '{$token}'; var priceDisplayPrecision = {$priceDisplayPrecision*$currency->decimals}; [removed] [removed][removed] [removed][removed] {if isset($js_files)} {foreach from=$js_files item=js_uri} [removed][removed] {/foreach} {/if} {$HOOK_HEADER} </head> <body {if $page_name}id="{$page_name|escape:'htmlall':'UTF-8'}"{/if}> {if $page_name == "index"} blabla {/if} {if $id_product == 194} blabla {/if} {if !$content_only} <!-- Header --> {$HOOK_TOP} <!-- Left --> {$HOOK_LEFT_COLUMN} <!-- Center --> {/if} Link to comment Share on other sites More sharing options...
Divine Posted July 12, 2010 Share Posted July 12, 2010 En fait c'est plutôt au niveau du fichier php qu'on voit ça.Si tu veux voir quelles variables sont déclarées pour ton fichier tpl, tu ajoutes {debug} tout en haut du fichier et tu rafraîchis ta page. Cela va t'ouvrir une popup avec toutes les variables dispos.Bon là en l'occurrence je te donne la manip pour les id_product au niveau du header (ce n'est effectivement pas déclaré)Donc tu ouvres le fichier header.php et tu ajoutes ces lignes: $product = new Product(intval($_GET['id_product']), true, intval($cookie->id_lang)); $smarty->assign(array( 'product' => $product )); Ensuite dans ton fichier header.tpl, tu utilises cette condition: {if $product->id == 1} Link to comment Share on other sites More sharing options...
creaclaire Posted July 13, 2010 Author Share Posted July 13, 2010 Je ne sais pas comment te remercier!!! ça marche Suis vraiment contente, merci beaucoup.Je vais pouvoir maintenant crééer des textes différents pour chaques pages.Un grand bravo et merci ! 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