Créer un module Prestashop

Estimated read time 4 min read

Principes techniques d’un module

Un module PrestaShop se compose d’un fichier PHP principal avec autant d’autres fichiers PHP que nécessaire, ainsi que des fichiers de modèles (.tpl) et des actifs (images, JavaScript, CSS, etc.) nécessaires pour afficher l’interface du module, que ce soit pour le client (sur le front office) ou pour le commerçant (sur le back office).
Tout module PrestaShop, une fois installé sur une boutique en ligne, peut interagir avec un ou plusieurs « hooks ». Les « hooks » vous permettent d’accrocher/attacher votre code à la vue courante au moment de l’analyse du code (c’est-à-dire lors de l’affichage du panier ou de la fiche produit, lors de l’affichage du stock actuel, etc.) ). Plus précisément, un hook est un raccourci vers les différentes méthodes disponibles à partir de l’objet Module, tel qu’attribué à ce hook.
Pour des raisons de sécurité, lors de la validation, nous n’acceptons aucun appel vers un autre site web/API afin de récupérer du code qui sera exécuté ultérieurement sur le serveur ou le client.

Principes de fonctionnement des modules

Les modules sont le moyen idéal de laisser s’exprimer votre talent et votre imagination de développeur, car les possibilités créatives sont nombreuses et vous pouvez faire à peu près n’importe quoi avec l’API de module de PrestaShop.
N’importe quel module :
peut afficher une variété de contenu (blocs, texte, etc.), effectuer de nombreuses tâches (mise à jour par lots, importation, exportation, etc.), s’interfacer avec d’autres outils, et bien plus encore.
facilite les interactions entre la boutique et les services externes.
peut être rendu aussi configurable que nécessaire ; plus il est configurable, plus il sera facile à utiliser, et pourra ainsi répondre aux besoins d’un plus grand nombre d’utilisateurs.
peut ajouter des fonctionnalités à PrestaShop sans avoir à modifier ses fichiers de base, ce qui facilite la mise à jour de PrestaShop sans avoir à transposer tous les changements de base. En effet, vous devriez toujours vous efforcer de rester à l’écart des fichiers de base lors de la construction d’un module, même si cela peut sembler nécessaire dans certaines situations.

Principales différences entre les modules 1.6 et 1.7

PrestaShop 1.7 a été conçu pour que les modules écrits pour la PS 1.6 puissent fonctionner presque tels quels – à l’exception de changements mineurs et d’une mise à jour cosmétique, les fichiers de modèles devant être adaptés au thème par défaut de la PS 1.7.
Les principaux changements de développement de modules dans PrestaShop 1.7 sont expliqués en détail dans cet article Build, et sont intégrés dans cette documentation mise à jour. Si vous savez déjà comment créer un module qui fonctionne avec la PS 1.6, nous vous conseillons vivement de lire cet article de haut en bas afin de vous mettre à jour avec le développement de la 1.7.
Certains modules natifs ont vu leur nom modifié dans PrestaShop 1.7. Voir la liste complète ici.

Dossier Modules

Les modules de PrestaShop se trouvent dans le dossier /modules, qui est à la racine du dossier principal de PrestaShop. Ceci est vrai pour les modules par défaut (fournis avec PrestaShop) et les modules tiers qui sont installés par la suite.
Les modules peuvent également faire partie d’un thème s’ils sont vraiment spécifiques à celui-ci. Dans ce cas, ils se trouveront dans le dossier /modules du thème, et donc sous le chemin suivant : /themes/[mon-thème]/modules
Chaque module a son propre sous-dossier à l’intérieur du dossier /modules : /bankwire, /birthdaypresent, etc.

À propos du cache

Le fichier /cache/class_index.php contient le lien entre la classe et le fichier de déclaration. En cas de problème de mise en cache, ce fichier peut être supprimé en toute sécurité.
Le dossier /config/xml contient la liste de tous les modules de base :
default_country_modules_list.xml
liste_de_modules_de_requisitoires.xml
tab_modules_list.xml
Lorsque l’interface du magasin ne reflète pas tout à fait vos changements et que le vidage du cache du navigateur n’est pas efficace, vous devez essayer de vider les dossiers suivants :
/cache/smarty/cache
/cache/compilation
Dernière mise à jour le 2 juillet 2020 : « Déplacer la liste des modules renommés et montrer ceux qui ne sont plus natifs » (98bfb49)
Cet article est publié sous la licence internationale Creative Commons Attribution-ShareAlike 4.0.

You May Also Like

More From Author

+ There are no comments

Add yours