Quelles sont les variables disponibles dans les templates d’emails de Prestashop ?
Avec Prestashop, chaque type d’email envoyé possède une liste de variables disponibles différentes.
La classe Mail définie dans Mail.php liste les variables qui sont incluses dans chacun des emails :
{shop_logo}
{shop_name}
{shop_url}
{my_account_url}
{guest_tracking_url}
{history_url}
{color}
Si vous souhaitez rajouter une nouvelle valeur, par exemple la civilité, vous pouvez :
– soit le faire de manière unitaire par surcharge des controlleurs de Prestashop, en ajoutant au tableau template_vars, 4ème paramètre de la méthode Mail::Send(), les nouvelles valeurs, par ex: {title} => ‘Monsieur’
– soit le faire pour l’ensemble des emails de Prestashop en surchargeant la classe Mail : le contexte disponible pour chaque email envoyé sera légèrement différent, mais vous aurez de bon résultat en vous appuyant sur la variable $this->context->customer (le genre est porté par l’attribut id_gender).
Notez que les variables disponibles évoluent en fonction des versions de Prestashop.
A compter de Prestashop 1.7 par exemple, l’identifiant de commande {id_order} est remplacé par la référence de commande {order_name}