Utiliser la classe DataPatchInterface dans un module

Objectif Mettre en place un module utilisant la classe DataPatchInterface Introduction Magento propose 2 classes permettant de définir des actions qui seront réalisées, une seule fois, lors de l’exécution de la commande bin/magento setup:upgrade. Les 2 classes qui nous intéressent sont \Magento\Framework\Setup\Patch\DataPatchInterface et \Magento\Framework\Setup\Patch\SchemaPatchInterface. Tutoriel Le projet Git de cet article est disponible sur Froggit,... » lire plus

Configurer Magento 2 en ligne de commande

Objectif Réaliser quelques configurations en ligne de commande. La commande bin/magento Le ligne de commande bin/magento comporte plusieurs options vous permettant de configurer votre boutique en ligne. Nous allons voir ici, quelques commandes très utiles. Aide Vous pouvez afficher l’aide en lançant simplement cette commande : bin/magento help Le fichier correspond à cette commande est... » lire plus

L’arborescence d’un module Magento 2

Dans un précédent article, nous avons étudiés les bases d’un module Magento 2. Dans cet article, nous allons expliquer l’arborescence d’un module. Les dossiers et fichiers de base Pour cet article, j’ai cloné le dépôt de mon modèle de base dans le dossier app/code/NicolasBejean/Master. Une fois le dépôt cloné, vous devez avoir l’arborescence suivante :... » lire plus

Installer MySQL 8.0 pour Magento 2

Objectif Installer et configurer MySQL 8.0 pour Magento 2 Installation Pour MySQL, il est nécessaire de télécharger le paquet .deb puis de l’installer wget https://dev.mysql.com/get/mysql-apt-config_0.8.13-1_all.deb apt install ./mysql-apt-config_0.8.13-1_all.deb apt-get update && apt-get install mysql-server Vérifier la version installée en lançant la commande : mysql --version. Configuration Avant de lancer le service, nous allons éditer le... » lire plus

Installer Elasticsearch pour Magento 2

Objectif Installer et configurer Elasticsearch 7.6 pour activer la recherche dans Magento 2 Installation Composants indispensables Pour fonctionner Elasticsearch a besoin de Java. Je vous invite à suivre les étapes ci-dessous pour lancer l’installation : apt install default-jre Vérifier l’installation en lançant la commande : java --version, le résultat doit être : openjdk 11.0.9.1 2020-11-04... » lire plus

Installer et configurer Redis pour Magento 2

Objectif Installer et configurer Redis et paramétrer Magento 2 pour activer les 3 caches avec Redis. À quoi sert Redis ? Redis est un logiciel de base de données NoSQL. Il fonctionne sur une base clé-valeur. Redis va être utile pour gérer le stockage des sessions, le cache des pages de Magento. Par défaut, Redis... » lire plus

Installer et configurer RabbitMQ pour Magento 2

Objectif Installer et configurer RabbitMQ pour Magento 2. À quoi sert RabbitMQ ? RabbitMQ est un logiciel d’agent de messages. Il fournit un mécanisme de communication asynchrone entre un expéditeur et un destinataire. Installation Il est possible de créer une instance RabbitMQ sous Docker très facilement, lien vers la page Docker. Pour cet article, nous... » lire plus

Les bases d’un module Magento 2

Au sein de Magento, un module vous permet de personnaliser votre boutique en ligne, en ajoutant des fonctionnalités, en modifiant le comportement d’une fonctionnalité existante… Un module est un ensemble de fichiers regroupés dans un dossier. Périmètre d’un module Un module peut être défini pour être utilisé dans le backoffice, frontoffice, les crons, les API... » lire plus

Archiver vos logs Magento 2 avec Logrotate

Objectif Archiver vos logs et gagner de l’espace disque en archivant vos logs Magento 2. Pré-requis Dans cet article, nous verrons uniquement la mise en place d’un conteneur Logrotate sous Docker pour archiver vos logs. Pour suivre le tutoriel, vous aurez besoin d’une boutique Magento 2 exécutée dans un environnement Docker. Tutoriel Création du projet... » lire plus

Installer et configurer Logstash pour faciliter le traitement des logs Magento 2

Objectif Installer Logstash 7.6 pour transmettre les logs Magento 2 à un serveur ELK Installation Composants indispensables Pour fonctionner Logstash a besoin de Java. Je vous invite à suivre les étapes ci-dessous pour lancer l’installation : apt install default-jre Vérifier l’installation en lançant la commande : java --version, le résultat doit être : openjdk 11.0.9.1... » lire plus

Envoyer des données clients vers une API externe

Objectif Envoyer à une API externe des données géographiques d’un client Pré-requis Pour mettre en place le test, vous devez disposer d’une installation de Magento Tutoriel Le projet Git de cet article est disponible sur Froggit, lien vers le dépôt. Création du module Je vous invite à télécharger le modèle de base pour la création... » lire plus

Créer une requête GraphQL simple pour Magento 2

Comment créer une requête simple GraphQL pour Magento 2 ? Pour commencer, il faut savoir qu’il existe 2 types de requêtes : Query Mutation Chacune de ces 2 requêtes ont un rôle particulier, les requêtes de type Query` permettent de récupérer de la donnée. Tandis que les requêtes de type `Mutation permettent de modifier de... » lire plus

Magento et les fils d’attente

Comment utiliser la file d’attente MySQL ? L’utilisation de la file d’attente MySQL de Magento vous permettra de communiquer de manière asynchrone entre l’expéditeur et le destinataire du message. Voici comment mettre rapidement en place un module de Message Queue MySQL et les opérations en bloc (Bulk Operations). Objectif Développer un module utilisant le Basic... » lire plus

Docker, Docker-Compose & Magento 2.4

Objectif Installer Magento 2.4 en utilisant Docker et Docker-Compose. Sources Avant de commencer, cela fait un moment que j’utilise Docker pour développer sous Magento 2. Après avoir testé plusieurs solutions, je me suis basé sur la solution proposée par Mark Shust. J’ai également visionné un paquet de vidéos de la chaîne Xavki. Tutoriel Changelog 23/11/2020... » lire plus

Créer des jeux d’attributs à l’installation d’un module

Tutoriel publié le 16/06/2019.   Objectifs Développer un module permettant de créer des jeux d’attributs à l’installation d’un module. Tutoriel Création du module Créer les fichiers suivants :   etc   module.xml   Setup   InstallData.php   composer.json   README.md   registration.php Insérer le contenu suivant dans le fichier module.xml : <?xml version="1.0"?> Insérer le... » lire plus

Magento 2 : Les extensions utiles

Après avoir installé un module, via la commande Composer, je vous invite à lancer les commandes : bin/magento setup:upgrade && bin/magento setup:di:compile && bin/magento cache:clean. MagePal Reindex Très utile pour ré-indexer depuis l’interface d’administration. composer require magepal/magento2-reindex MagePal Gmail SMTP Pour mieux paramétrer l’envoi des emails. composer require magepal/magento2-gmailsmtpapp Experius Email Catcher Permet d’avoir un... » lire plus

Magento 2 : Les extensions à désactiver par défaut

Lorsque je déploie une boutique Magento, je désactive quelques modules. Voici la liste répartie par catégories. Après avoir désactivé, je vous invite à lancer les commandes : bin/magento setup:upgrade && bin/magento setup:di:compile && bin/magento cache:clean. Vous êtes libre de laisser actifs ces modules et d’en désactiver d’autres. Magento 2.4.2 Adobe Stock bin/magento module:disable Magento_AdobeIms Magento_AdobeImsApi... » lire plus

Installation de Magento 2.4

Cet article a été entièrement revu et mis à jour. Il se consacre exclusivement à l’installation de Magento 2.4 avec Nginx et PHP-FPM 7.4 sous Debian Buster. Je n’aborde pas l’installation d’e ‘Elasticsearch, Redis, Varnish et RabbitMQ. Objectif Installer Magento 2.4.2 depuis Composer. Installation Pré-requis Avant de procéder à l’installation de Magento 2, vous devez... » lire plus

Surcharger le layout de la page d’accueil

Pré-requis Disposer d’un serveur sous Linux Debian 8 Avoir une connexion au serveur par SSH ou par un Terminal Avoir télécharger les fichiers Magento 2 nécessaires à l’installation Avoir créer un thème personnalisé Objectifs Surcharger le layout de la page d’accueil dans un thème personnalisé Tutoriel Création de l’arborescence Accéder au dossier dossier_magento/app/design/frontend/nom_du_vendor/nom_du_theme et créer... » lire plus

Remplacer la favicon dans un thème personnalisé

Pré-requis Disposer d’un serveur sous Linux Debian 8 Avoir une connexion au serveur par SSH ou par un Terminal Avoir télécharger les fichiers Magento 2 nécessaires à l’installation Avoir créer un thème personnalisé Objectifs Remplacer la favicon dans un thème personnalisé Tutoriel Création de l’arborescence Accéder au dossier dossier_magento/app/design/frontend/nom_du_vendor/nom_du_theme et créer les dossiers du Magento_Theme/web.... » lire plus

Configurer Gulp pour Magento 2

Pré-requis Disposer d’un serveur sous Linux Debian 8 Avoir une connexion au serveur par SSH ou par un Terminal Avoir installer Node.js Avoir télécharger les fichiers Magento 2 nécessaires à l’installation Objectifs Utiliser Gulp pour Magento 2. Tutoriel Création de l’arborescence Créer l’arborescence suivante dans le dossier /app :   app   local   theme... » lire plus

Créer une boutique Magento 2 en ligne de commande

Objectif Créer une boutique Magento 2 en utilisant une ligne de commande Pré-requis Avoir créé une base de données MySQL ou autre compatible avec Magento 2 Avoir créé un vhost pour Apache 2 ou Nginx Avoir téléchargé les fichiers Magento 2 nécessaires à l’installation Tutoriel Lancer la ligne de commande La ligne de commande est... » lire plus

Installer le module sample data depuis Git

Pré-requis Avoir installer Git Disposer d’un site Magento 2 Avoir accès aux fichiers et dossiers du site Magento 2 Objectifs Installer le module sample data dans Magento 2 depuis GitHub. Tutoriel Cloner le dépôt Git Créer un dossier sample-data dans /var/www et y accéder : mkdir /var/www/sample-data && cd /var/www/sample-data Cloner le dépôt Git au... » lire plus

Désactiver la comparaison de produits

Pré-requis Disposer d’un site Magento 2 Avoir accès aux fichiers et dossiers du site Magento 2 Avoir créer un thème personnalisé Objectifs Désactiver la comparaison de produits dans une boutique Magento 2. Tutoriel Création de l’arborescence Accéder au dossier du thème ciblé :   dossier_magento   app   design   frontend   nom_du_vendor   nom_du_theme... » lire plus

Création d’un thème personnalisé sous Magento 2

Pré-requis Disposer d’un site Magento 2 Avoir accès aux fichiers et dossiers du site Magento 2 Objectifs Créer et activer un thème personnalisé dans Magento 2 basé sur le thème Magento/Luma Tutoriel Création de l’arborescence Accéder au dossier dossier_magento/app/design/frontend et créer les dossiers du vendor et du thème. Le résultat obtenu doit être le suivant... » lire plus