Variables globales
Les variables globales sont des variables qui sont disponibles dans tous les templates Twig.
Afin d'ajouter une nouvelle variable global, rendez-vous dans un Controller.
Dans votre controller, utilisez l'attribut Action pour vous greffer au hook elementum.twig.globals afin d'ajouter votre variable globale.
#[Action('elementum.twig.globals', accepted_args: 2)] public function globals(\Twig\Environment $twig, \Elementum\Container $container) { $twig->addGlobal('session', $_SESSION); }
La variable peut contenir tout type de donnée. Ici on lui donne le tableau $_SESSION.
Utilisation
Une fois la variable ajoutée, elle peut être utilisée dans un template Twig de la manière suivante :
{% if session.token %} <p>Token : {{ session.token }}</p> {% endif %}
Arguments
$twig est nécessaire surtout pour ajouter la variable global. Si besoin, l'appel à addGlobal peut se faire dans un hook à partir du moment où le hook n'est pas utiliser trop tard.
$container est passé dans le cas ou vous auriez besoin d'avoir accès à un service.