Installation et configuration du module Kowal Outlet Products
Informations de base
- Package Composer :
kowal/module-outletproducts - Module Magento :
Kowal_OutletProducts - Type d’application requis : Magento 2
- Dépendance du package :
kowal/base - Commande CLI du module :
bin/magento kowal_outletproducts:generate
Installation via Composer
Ajoutez le dépôt du module :
composer config repositories.module.outlet.products vcs https://github.com/kowalco/magento-2-outlet-productsSi le dépôt est privé, configurez le token d’accès :
composer config --auth github-oauth.github.com Installez le module :
composer require kowal/module-outletproductsActivez le module :
php bin/magento module:enable Kowal_OutletProductsEffectuez la mise à jour de la base de données :
php bin/magento setup:upgradeEn environnement de production, lancez la compilation DI et le déploiement des ressources statiques conformément au processus de déploiement de la boutique :
php bin/magento setup:di:compilephp bin/magento setup:static-content:deployVidez le cache :
php bin/magento cache:flushMise à jour d’une installation existante
Après la mise à jour du module, exécutez :
composer update kowal/module-outletproductsphp bin/magento setup:upgradephp bin/magento cache:flushSi la boutique fonctionne en production mode, effectuez également les étapes de déploiement standard :
php bin/magento setup:di:compilephp bin/magento setup:static-content:deploysetup:upgrade est requis, car le module ajoute et met à jour les attributs produit utilisés pour la gestion de OUTLET et des copies de prix spéciaux.
Attributs produit
Le module ajoute ou utilise les attributs suivants :
| Attribut | Signification |
|---|---|
sale | Marque le produit comme OUTLET. |
special_price_copy | Copie de la valeur special_price avant l’entrée du produit dans OUTLET. |
special_from_date_copy | Copie de la date special_from_date. |
special_to_date_copy | Copie de la date special_to_date. |
special_price_copy_active | Marqueur indiquant que la copie du prix spécial a été effectuée. |
Configuration dans le panneau d’administration
Accédez à :
Stores > Configuration > kowal > OUTLET ProductsOptions disponibles :
| Option | Description |
|---|---|
Włącz moduł Outlet | Active ou désactive le fonctionnement du module. |
Usuń ceny specjalne dla produktów po wyprzedaży | Détermine si le prix spécial doit être effacé après la fin de OUTLET. Si l’option est désactivée, le module restaurera le prix à partir de la copie. |
Kategorie outletowe | Liste des catégories auxquelles les produits OUTLET sont attribués et dont ils sont ensuite automatiquement retirés. |
Wyłącz zarządzanie stanem magazynowym po wyprzedaży | Permet de désactiver manage_stock après la fin des soldes. |
Włącz backorder po zakończeniu wyprzedaży outletowej | Permet d’activer le backorder et de marquer le produit comme disponible après la fin de la vente outlet. |
La configuration est disponible aux niveaux default, website et store. Les catégories OUTLET utilisées par le cron sont récupérées depuis la configuration par défaut.
Configuration des catégories OUTLET
- Créez dans Magento une ou plusieurs catégories destinées à l’outlet.
- Assurez-vous que les catégories sont actives et visibles dans le menu ou le listing si elles doivent être accessibles aux clients.
- Dans la configuration du module, sélectionnez toutes les catégories outlet dans le champ
Kategorie outletowe. - Enregistrez la configuration.
- Videz le cache Magento.
php bin/magento cache:flushImport de produits dans OUTLET
Accédez au panneau :
kowal > Upload Outlet ProductsDans le formulaire :
- Collez la liste des SKU, un SKU par ligne.
- Sélectionnez les catégories OUTLET.
- Sélectionnez éventuellement les websites auxquels le produit doit être attribué.
- Choisissez si le module doit activer la gestion des stocks pour les produits importés.
- Cliquez sur
Importuj.
Exemple de liste de SKU :
TSHIRT-BLACK-MTSHIRT-BLACK-LJACKET-NAVY-XLSHOES-WHITE-42Lors de l’import, le module :
- attribue les produits aux catégories OUTLET,
- définit l’attribut
sale, - met à jour les parents configurable,
- crée une copie du prix spécial et des dates de promotion,
- met à jour le stock selon l’option sélectionnée,
- actualise les index et le cache des produits et des catégories.
Gestion des produits configurables
Si le produit importé est une variante d’un produit configurable, le module recherche le parent et l’attribue à la catégorie OUTLET. Ainsi, le produit configurable apparaît dans le listing de la catégorie, et le client peut sélectionner la variante outlet.
Lors du recalcul cyclique, le module vérifie si le parent possède encore des variantes OUTLET actives. Si ce n’est pas le cas, le parent est détaché de la catégorie OUTLET.
Gestion des prix spéciaux
Lors de l’import dans OUTLET, le module enregistre une copie de :
special_price,special_from_date,special_to_date.
La copie est enregistrée conformément au scope de l’attribut de prix spécial dans Magento :
- pour les prix globaux : au niveau global,
- pour les prix par website : au niveau de la store view par défaut de chaque website,
- pour les prix par store : au niveau de la store view.
Le module ne convertit pas les devises. Magento stocke les prix comme valeurs de base pour le scope approprié, et la présentation des devises sur le frontend reste prise en charge par les mécanismes standard de Magento.
Le comportement après la fin de OUTLET dépend de l’option Usuń ceny specjalne dla produktów po wyprzedaży :
Tak: le module efface le prix spécial et supprime la copie technique,Nie: le module restaure le prix spécial ainsi que les dates à partir de la copie, puis supprime la copie technique.
Cron
Le module dispose d’une tâche cron :
kowal_outletproducts_outletLa tâche lance le helper OUTLET et vérifie cycliquement les produits outlet. Le cron retire les produits des catégories OUTLET lorsqu’ils ne doivent plus y être visibles, et actualise les index ainsi que le cache.
Après l’installation, assurez-vous que le cron Magento fonctionne correctement :
php bin/magento cron:runEn environnement de production, le cron doit être lancé depuis le crontab système de l’utilisateur de l’application Magento.
Lancement manuel du recalcul
Le recalcul peut être lancé manuellement depuis la CLI :
php bin/magento kowal_outletproducts:generateLa commande exécute le même processus que celui lancé par le cron.
Index et cache
Après les modifications, le module actualise les principaux index produit et catalogue :
catalog_product_price,catalog_product_category,catalogsearch_fulltext,inventory,cataloginventory_stock.
Le module vide également le cache des tags des produits et des catégories OUTLET, ce qui permet au listing de catégorie de se mettre à jour après un changement de statut ou le détachement d’un produit.
Si nécessaire, vous pouvez forcer une réindexation complète :
php bin/magento indexer:reindexphp bin/magento cache:flushTest après déploiement
Test fonctionnel recommandé :
- Sélectionnez un produit simple avec du stock.
- Définissez un prix spécial et des dates de promotion.
- Ajoutez le produit à OUTLET via le panneau d’import.
- Vérifiez que le produit est apparu dans la catégorie OUTLET.
- Vérifiez que l’attribut
salea la valeurTak. - Pour un produit configurable, vérifiez que le parent est apparu dans OUTLET.
- Modifiez l’état du produit afin qu’il ne soit plus salable.
- Lancez le cron ou la commande CLI.
- Vérifiez que le produit a été retiré de la catégorie OUTLET.
- Vérifiez que le prix spécial a été restauré ou supprimé conformément à la configuration.
Problèmes fréquents
Le produit est toujours visible dans OUTLET
Vérifiez :
- si le cron Magento fonctionne,
- si le produit n’a pas toujours
sale = 1, - si le produit est attribué à l’une des catégories configurées comme OUTLET,
- si les index et le cache ont été actualisés.
Commandes utiles :
php bin/magento cron:runphp bin/magento indexer:reindexphp bin/magento cache:flushLe parent configurable est toujours dans OUTLET
Vérifiez si une variante du produit possède encore sale = 1. Le parent est maintenu dans OUTLET tant qu’il possède une variante outlet active.
Le prix spécial n’a pas été restauré
Vérifiez :
- si le produit avait été ajouté à OUTLET après l’installation des attributs de copie,
- si l’attribut
special_price_copy_activeétait défini, - si la configuration
Usuń ceny specjalne dla produktów po wyprzedażyest définie surNie, - quel scope de prix est défini dans Magento.
Les prix diffèrent entre les store views
Vérifiez la configuration du scope des prix dans Magento. Le module ne convertit pas les devises et ne synchronise pas les prix entre les store views. Il restaure les valeurs enregistrées pour le scope de prix approprié.
Désinstallation
Si le module doit être désactivé :
php bin/magento module:disable Kowal_OutletProductsphp bin/magento setup:upgradephp bin/magento cache:flushSuppression du package Composer :
composer remove kowal/module-outletproductsphp bin/magento setup:upgradephp bin/magento cache:flushAvant de supprimer le module, il est recommandé de vérifier si les produits ne nécessitent pas un nettoyage manuel de l’attribut sale ou un détachement des catégories OUTLET.


















