Jump to content

Variables globales


Recommended Posts

Bonjour à tous,

J'essaie de définir une variable globale qui sera utilisée dans un module personnalisé, mais le fichier tpl du module affiche toujours une valeur nulle. Je suppose que c'est un problème avec la portée de la variable, donc j'essaie de créer cette nouvelle variable globale à l'emplacement où les variables globales de prestashop sont définies. J'ai perdu énormément de temps sur ce problème, mais je n'ai toujours pas de solution. Est-ce que quelqu'un sait comment procéder ?

Link to comment
Share on other sites

Bonjour,

c'est quoi une variable globale pour vous ?

Dans votre module, vous pouvez définir des variables avec le construct() ainsi :

private $errors = array();

Puis dans le module elles peuvent être appelé ainsi

$this->errors

Et si vous voulez les utiliser dans un TPL il faudra penser à les assigner à smarty.

Link to comment
Share on other sites

Merci de la réponse!

 

Mais le problème qui se pose est que le module est un module tiers et que je suis incapable de le surcharger. Ainsi, je dois modifier la classe principale du module directement, ce qui n'est pas l'idéal si des mises à jour ou des changements viennent à être effectués à l'avenir par le propriétaire du module.

Ainsi, j'essaye de contourner cet obstacle et de définir la variable smarty globalement, c'est-à-dire pour qu'elle soit accessible de n'importe quel fichier tpl, qu'il soit dans un module core ou custom. J'ai tenté de surcharger le FrontController, mais lorsque j'essaye d'afficher la variable smarty qui a été assignée dans le dit contrôleur, son contenu est toujours "null";

 

Je suis débutante dans le développement Prestashop, donc je m'excuse si j'exprime mal mon besoin.

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...