Créer un plugin sur Magento 2
Les plugins dans Magento 2 permettent de modifier le comportement des classes publiques en interceptant des méthodes et en exécutant du code avant, après ou autour de ces méthodes. Voici donc le tutoriel Magento 2 qui vous permettra de mettre en place un plugin !
Étape 1: Créez un module
A l’aide du tutoriel ?Créer un module Magento 2?, créez votre module Gone/MyPlugin dans le répertoire app/code.
Étape 2: Identifiez la classe et la méthode à intercepter
Supposons que vous souhaitez intercepter la méthode getPrice de la classe MagentoCatalogModelProduct.
Étape 3: Déclarez le Plugin
Dans votre module, créez ou ouvrez le fichier di.xml dans le dossier etc.
Ajoutez le code suivant :
Étape 4: Créez le fichier de plugin
Dans app/code/Gone/MyPlugin/Plugin, créez un fichier appelé Product.php.
Méthode before
La méthode before vous permet de modifier les arguments qui seront passés à la méthode originale.
Méthode after
La méthode after vous permet de modifier le résultat retourné par la méthode originale.
Méthode around
La méthode around permet de faire des actions avant et après la méthode originale. Elle peut aussi éviter l’appel de la méthode originale.
Après avoir ajouté ces fichiers, nettoyez le cache de Magento :
Étape 6: Testez votre plugin
Maintenant, quand la méthode getPrice de la classe MagentoCatalogModelProduct sera appelée (fiche produit, panier ?), votre plugin interviendra selon les méthodes before, after et around que vous avez définies.
Et voilà, vous avez créé un plugin dans Magento 2 ! Vous pouvez utiliser les méthodes before, after, et around pour influencer le comportement des classes de différentes manières. Notez que vous pouvez utiliser toutes ces méthodes dans un seul plugin, mais faites attention aux interactions entre elles. Pour toute question sur le sujet, n’hésitez pas à suivre une de nos formations à Magento 2 ou à prendre contact avec notre agence Magento !