Aller au contenu principal

Balises Smarty

Fiche écrite en 2013, pour les navigateurs et les versions de l’époque. Vérifiez qu’elle correspond encore à votre environnement avant de l’appliquer.

Le mémo des balises Smarty que j’utilise le plus sur les thèmes PrestaShop : afficher le contenu d’une variable pour savoir ce qu’elle contient vraiment, limiter une boucle à quelques éléments, et savoir où l’on en est dans un foreach.

Smarty
// Debug smarty
{$product|@debug_print_var}
{$product|@print_r}
<pre>{$product|var_dump}</pre>


// Restreindre à un nombre d'éléments
{counter assign=nb print=0}
{foreach from=$w4u item=child name=w4u}
    {counter}
    {if $nb <= 4}
        ....


// Compter un nombre d'éléments
{$columns|@count}


// Compter dans un foreach
{$columns@iteration}
{$smarty.foreach.foo.index}   // commence a 0
{$smarty.foreach.foo.iteration}   // commence a 1
{$smarty.foreach.foo.total}

{if $smarty.foreach.foo.index % 5 == 0}
{if $smarty.foreach.foo.first}   // Condition sur le 1er
{if $smarty.foreach.foo.last}   // Condition sur le dernier


// Pair / Impair
{if $var is even by 2}


// Alterner une valeur
{cycle values="#eeeeee,#d0d0d0"}


// Afficher l'heure
{html_select_time use_24_hours=true}


// Assigner une variable
{assign var="foo" value="..."}


// Envoyer une variable
{include file="$tpl_dir./product-list.tpl" products=$foo}


// Récupérer une variable
{$smarty.get.ma_var}


// Récupérer le nom de la page
{$smarty.capture.path}


// Parcourir un tableau
{foreach from=$myArray key=k item=v}
  <li>{$k}: {$v}</li>
{foreachelse}
    Aucun élément n'a été trouvé dans la recherche
{/foreach}