Jump to content

[Résolu] Problème pour ecrire une variable


Recommended Posts

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

Déclarée... bonne question ?
Je pense que le plus simple c'est que je mette la page header.tpl
Si 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

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

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 account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...