Accueil » Conseils & tutoriels sites internet » Tutos Prestashop » Les variables Smarty de Prestashop

Les variables Smarty de Prestashop

Posté dans : Tutos Prestashop 0

Il existe peu de sites listant les variables Smarty utilisées par Prestashop 1.6. Voici un récapitulatif non exhaustif de celles qu’on est régulièrement appelés à utiliser sur son thème. La documentation Smarty est toujours utile à consulter en cas de problème, et bien souvent dans un thème le code que l’on cherche à taper se trouve quelques lignes plus bas. La combinaison de ces variables devrait grandement aider à l’amélioration d’un e-commerce Prestashop.

Le sommaire de Cyssoo sur les variables Smarty Prestashop 1.6

De bonnes variables smarty bien maîtrisées couplées à une bonne compréhension des CSS de Prestashop feront de vous un intégrateur – webdesigner aguerri.

Variables Smarty Prestashop globales

  • $base_dir (root folder of your shop)
  • $base_dir_ssl (root folder of your shop using HTTPS protocol)
  • $content_dir (root folder of your shop depending on the SSL settings)
  • $img_ps_dir (root folder containing images « /img/ »)
  • $img_dir (images folder in your current theme directory)
  • $css_dir (css folder inside the current theme folder)
  • $js_dir (JavaScript folder inside the theme folder)
  • $tpl_dir (theme root folder)
  • $modules_dir (modules root folder)
  • $mail_dir (mail templates root folder)
  • $lang_iso (current language ISO code)
  • $come_from (previous page address [absolute])
  • $shop_name (your specified shop name)
  • $cart_qties (total number of products in the cart)
  • $cart (shopping cart contents)
  • $currencies (pulls available currencies)
  • $id_currency_cookie (selected currency id [cookie dependent])
  • $currency (active currency)
  • $cookie (active cookie)
  • $languages (grabs available languages)
  • $logged (checks whether users is logged in)
  • $page_name (current page’s name)
  • $customerName (customer name [session dependent])
  • $priceDisplay (current price display settings [currency dependent])

Variables Smarty Prestashop de catégories

  • $category->name
  • $category->description
  • $category->id_image
  • $category->link_rewrite
  • $category->id
  • $category->id_parent
  • $category->active
  • $category->position
  • $category->level_depth
  • $category->nleft
  • $category->nright
  • $category->link_rewrite
  • $category->meta_title
  • $category->meta_keywords
  • $category->meta_description
  • $category->date_add
  • $category->date_upd

Variables Smarty Prestashop de sous-catégories

  • $subcategory.name
  • $subcategory.description
  • $subcategory.link_rewrite
  • $subcategory.id_category

Variables Smarty Prestashop de produits

  • $product->category
  • $product->reduction_to
  • $product->reduction_from
  • $product.category
  • $product.id_category_default
  • $product.name
  • $product.description
  • $product.description_short
  • $product.link_rewrite
  • $product.id_product_attribute
  • $product.id_product
  • $product.available_for_order
  • $product.price
  • $product.price_tax_exc
  • $product.reduction_percent
  • $product.price_without_reduction
  • $product->on_sale
  • $product->specificPrice
  • $product->specificPrice.reduction_type
  • $product->specificPrice.reduction

A insérer dans lien : {$link->getModuleLink('NomDuModule', 'NomDuController', [], true)|escape:'html'}

{$link->getModuleLink('cheque', 'validation', [], true)|escape:'html'} -> Lien vers la page de validation de paiement par chèque

{$link->getPageLink('Controller', true, NULL, "step=3")|escape:'html'} -> Lien vers une page spécifique

{$link->getPageLink('order', true, NULL, "step=3")|escape:'html'} -> Lien vers la page de commande à l’étape 3

Le Panier et  le client en Smarty

{$cart} Les information sur le panier en cours (date, id customer, adress, information de livraison…)

  • id
  • id_shop_group
  • id_shop
  • id_address_delivery
  • id_address_invoice
  • id_currency
  • id_customer
  • id_guest
  • id_lang
  • recyclable
  • gift
  • gift_message
  • mobile_theme
  • date_addl
  • secure_key
  • id_carrier
  • date_upd
  • checkedTos
  • pictures
  • textFields
  • delivery_option
  • allow_seperated_package
  • id_shop_list
  • $cookie->id_customer : l’identifiant du client

Des petits plus en Smarty Prestashop

$PS_CATALOG_MODE => mode catalogue (activé ou non) à utiliser avec la syntaxe {if !$PS_CATALOG_MODE}{/if}

$use_taxes => utilisation des taxes à utiliser avec la syntaxe {if $use_taxes}{/if}

$order_process => processus de commande, en une ou cinq étapes à utiliser pour des liens du genre

$show_tax => affichage des taxes à utiliser avec la syntaxe {if $show_tax}{/if}  

Déterminer le type de page sur lequel on se trouve :

{if isset($page_name)}{$page_name|escape:'html':'UTF-8'}{/if} : cela affiche cms ou product par exemple selon la page affichée

Afficher le nom de la page directement en smarty

{if isset($body_classes) && $body_classes|@count} {implode value=$body_classes separator=' '}{/if} : très utile pour déterminer des classes ou des identifiants sur divers éléments du site

Sachez au passage qu’il est possible d’améliorer et d’automatiser son référencement naturel en se servant de ces variables smarty dans le header de votre site. Ainsi, vous pourrez utiliser vos résumés de produits en guise de meta_description.

Il est intéressant au passage d’ajouter également les balises Open Graph de manière à améliorer le partage vers Facebook. 

Si vous disposez d’un contenu multi-lingue, Google préconise l’utilisation de balises dites hreflang, permettant d’indiquer aux moteurs de recherche un contenu disponible dans une autre langue.

Imprimer Imprimer
Suivre Cyssoo:

Développeur - formateur

Je cherche à display errors le monde, vous auriez pas la doc' ? Follow me on Twitter !

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.