Si vous découvrez Prestashop à l’instant, vous devez absolument en apprendre plus sur les classes dont vous allez souvent user et peut-être abuser : les classes Tools et Configuration.
La classe Tools
Comme son nom l’indique, la classe Tools contient de nombreux outils pour le débuggage, le formattage et traitement de données et médias, …
Certaines méthodes de la classe Tools sont redondantes avec des fonctions natives php (telle que Toos::jsonEncode() qui correspond à json_encode() – ces méthodes ont été créées pour la compatibilité avec les anciennes versions de php), toutefois vous y trouverez aussi de nombreuses autres méthodes pour vous simplifiez grandement la vie dans le monde Prestashop.
Quelques fonctions utiles de la classe Tools :
Tools::fd($var) – Vous aller pouvoir, grâce à cette méthode, faire un console.log() de $var. La valeur de la variable $var s’affichera donc dans la console de développement de votre navigateur. Cette fonction utile en phase de débuggage ne doit pas persister dans le code final.
Tools::isSubmit(‘submitName’) – Cette fonction permet de tester si un formulaire à été soumit. La méthode prend en paramètre le nom de l’input ( valeur de l’attribut name) de type submit correspondant.
Tools::getValue(‘postValue’) – cette méthode vous permet de récupérer le contenu échappé d’une variable passée dans une requête POST. Elle prend en paramètre le nom de celle-ci.
La classe Configuration
La classe Configuration vous permettra, elle, de définir des settings pour votre module et de les enregistrer facilement sans avoir à créer de nouvelles tables. Les configurations seront stockées dans la table [prefix]_configurations.
La table de configuration est créée selon un système de clé/valeur. Par convention, la clé est constituée de mots écrits en majuscules et séparés par des undersores (ex: MY_CONFIG_KEY). Il faut veiller à ce que cette clé soit unique.
Voici comment utiliser la classe Configuration pour la sauvegarde de vos settings :
- Ecriture d’une clé (création d’une nouvelle clé ou modification de la valeur d’une clé existante)
Configuration::updateValue(“MY_KEY”, “value”);
- Lecture de la valeur d’une clé
// Lecture de la valeur de la clé MY_KEY Configuration::get(“MY_KEY”);
- Suppression d’une entrée
Configuration::deleteByName(“MY_KEY”);
N’hésitez pas à explorer le contenu des classes natives de Prestashop, vous pourrez y trouver pleins de fonctions utiles qui vous simplifierons la vie et vous ferons gagner du temps dans vos développements.