Modulo Outlet per Magento 2 - Automazione dei saldi
- SKU
- M2-OUTLET
Descrizione / Modulo Outlet per Magento 2 - Automazione dei saldi
Kowal Outlet Products è un modulo per Magento 2 che automatizza la gestione dei prodotti outlet, in saldo e di fine serie. La soluzione aiuta a mantenere ordine nel catalogo, assegnare i prodotti alla categoria OUTLET, contrassegnarli con un attributo dedicato e rimuoverli dall’outlet quando non devono più essere visibili come offerta promozionale.
Il modulo è stato progettato per negozi in cui i prodotti outlet cambiano in modo dinamico: una parte è costituita da singoli prodotti semplici, una parte da varianti di prodotti configurabili e una parte richiede la gestione di più store, più website e diverse configurazioni dei prezzi.
Valore aziendale principale
Nel Magento standard, la gestione dell’outlet richiede spesso il controllo manuale di più elementi contemporaneamente: categorie, stato del prodotto, prezzo speciale, giacenze di magazzino, varianti configurabili e cache. Con un catalogo più ampio è facile che si verifichi una situazione in cui un prodotto continua a comparire in OUTLET nonostante sia esaurito, il parent di un prodotto configurabile rimane nella categoria senza varianti attive oppure il prezzo speciale viene ripristinato in modo non conforme alla configurazione dello store.
Kowal Outlet Products mette ordine in questo processo. L’amministratore può aggiungere un elenco di SKU all’outlet e il modulo si occuperà dell’assegnazione alle categorie corrette, dell’impostazione dell’attributo OUTLET, della gestione dei parent configurable e del successivo scollegamento automatico dei prodotti al termine della vendita.
Funzionalità principali
- importazione massiva dei prodotti in OUTLET tramite elenco SKU,
- assegnazione dei prodotti a una o più categorie outlet,
- gestione di prodotti semplici e varianti di prodotti configurabili,
- contrassegno automatico dei prodotti con l’attributo
sale, - assegnazione dei parent configurable a OUTLET quando le loro varianti sono outlet,
- scollegamento automatico dei prodotti dalla categoria OUTLET dopo l’esaurimento o la disattivazione dello stato outlet,
- scollegamento del parent configurable quando nessuna variante è più un prodotto OUTLET,
- controllo ciclico dei prodotti tramite cron,
- avvio manuale del ricalcolo dalla console Magento,
- aggiornamento degli indici e della cache di prodotti e categorie,
- gestione di stock e backorder al termine del saldo,
- backup e ripristino dei prezzi speciali,
- supporto della configurazione multistore e del website scope per i prezzi,
- marcature OUTLET accanto agli swatch delle varianti nella scheda prodotto.
Come funziona il processo OUTLET
L’amministratore seleziona le categorie outlet nella configurazione del modulo. Successivamente, dal pannello di amministrazione può incollare un elenco di SKU e aggiungere i prodotti al saldo. Il modulo assegna i prodotti alla categoria OUTLET e imposta l’attributo sale.
Per i prodotti configurabili, il modulo opera su due livelli. Se la variante è outlet, anche il parent configurable può essere aggiunto alla categoria OUTLET, in modo che il cliente veda il prodotto nel listing. Quando la variante viene esaurita o smette di avere lo stato OUTLET, il modulo verifica se il parent dispone ancora di varianti outlet attive. In caso contrario, il parent viene scollegato da OUTLET.
Il cron del modulo controlla regolarmente lo stato dei prodotti. Quando un prodotto non è più vendibile, il modulo lo rimuove dalle categorie outlet, modifica lo stato outlet e aggiorna i dati negli indici e nella cache. In questo modo il listing della categoria OUTLET rimane aggiornato senza interventi manuali da parte dell’amministratore.
Gestione dei prezzi speciali
Il modulo può proteggere i prezzi speciali dalla perdita durante il ciclo OUTLET. Quando un prodotto viene aggiunto all’outlet, il prezzo speciale corrente viene copiato negli attributi tecnici. Al termine dell’outlet, il prezzo può essere ripristinato oppure cancellato, a seconda della configurazione.
Il backup include:
special_price,special_from_date,special_to_date.
Il modulo rispetta lo scope dei prezzi Magento. Se i prezzi sono globali, opera a livello globale. Se i prezzi sono impostati per website, il modulo salva e ripristina i valori in base agli store view predefiniti dei website. Non esegue conversioni valutarie, perché Magento memorizza i prezzi come valori base per un determinato scope e le valute dello store vengono convertite dai meccanismi Magento.
Multistore e multivaluta
Kowal Outlet Products può funzionare in installazioni Magento con più store view e website. Durante l’importazione, l’amministratore può indicare i website a cui il prodotto deve essere assegnato. La configurazione del modulo è disponibile a livello default, website e store, consentendo di adattare il funzionamento alla struttura del negozio.
Nell’ambito dei prezzi speciali, il modulo non moltiplica né converte i valori tra valute. Mantiene gli importi salvati in Magento per lo scope di prezzo corretto. Questo permette di evitare errori derivanti dalla conversione manuale dei tassi e lascia ai meccanismi standard di Magento la responsabilità della presentazione delle valute.
Esempio di utilizzo
Il negozio vende abbigliamento e dispone di una categoria OUTLET in cui mostra gli ultimi pezzi di prodotti delle collezioni precedenti. L’amministratore riceve un elenco di SKU delle varianti che devono entrare in saldo, ad esempio:
TSHIRT-BLACK-MTSHIRT-BLACK-LJACKET-NAVY-XLSHOES-WHITE-42Dopo aver incollato l’elenco nel pannello di importazione, il modulo:
- imposta i prodotti come OUTLET,
- li assegna alla categoria
OUTLET, - assegna i parent dei prodotti configurabili se le loro varianti sono outlet,
- salva una copia dei prezzi speciali correnti,
- aggiorna opzionalmente le impostazioni dello stock,
- aggiorna indici e cache.
Il cliente vede i prodotti nella categoria OUTLET e le marcature accanto alle varianti. Quando l’ultimo pezzo di una variante viene venduto, il cron del modulo rileva che il prodotto non è più salable, lo rimuove da OUTLET e aggiorna il listing. Se era l’ultima variante outlet di un determinato prodotto configurabile, anche il parent viene rimosso dalla categoria OUTLET.
A chi è destinato questo modulo
Il modulo è destinato ai negozi Magento 2 che:
- gestiscono una sezione permanente OUTLET o SALE,
- lavorano spesso con fine serie,
- hanno prodotti configurabili con varianti con diverso stato di saldo,
- vogliono ridurre il lavoro manuale nell’aggiornamento delle categorie,
- necessitano di controllo sui prezzi speciali in ambiente multistore,
- vogliono evitare prodotti non aggiornati nei listing di categoria.
Elementi tecnici
- Nome del pacchetto Composer:
kowal/module-outletproducts - Nome del modulo Magento:
Kowal_OutletProducts - Comando CLI:
bin/magento kowal_outletproducts:generate - Pannello di configurazione:
Stores > Configuration > kowal > OUTLET Products - Pannello di importazione:
kowal > Upload Outlet Products - Attributi prodotto principali:
sale,special_price_copy,special_from_date_copy,special_to_date_copy,special_price_copy_active
Risultato dell’implementazione
Dopo l’implementazione del modulo, il negozio ottiene un processo coerente di gestione dell’outlet: i prodotti vengono inseriti nelle categorie corrette, varianti e parent vengono mantenuti in modo logico, i prezzi speciali sono protetti e i dati di catalogo vengono aggiornati dopo le modifiche. In questo modo gli amministratori possono concentrarsi sulla scelta dei prodotti da mettere in saldo, invece che sulla pulizia manuale di categorie e cache.
More Information
| Conformità al modello | Luma / Vuoto, Fabbro |
|---|
Istruzioni per l'installazione del modulo
Installazione e configurazione del modulo Kowal Outlet Products
Informazioni di base
- Pacchetto Composer:
kowal/module-outletproducts - Modulo Magento:
Kowal_OutletProducts - Tipo di applicazione richiesto: Magento 2
- Dipendenza del pacchetto:
kowal/base - Comando CLI del modulo:
bin/magento kowal_outletproducts:generate
Installazione tramite Composer
Aggiungi il repository del modulo:
Riceverai via e-mail, dopo l’acquisto, i dati di accesso al repository Composer, ovvero l’indirizzo e-mail del cliente e il token di licenza. Sono disponibili anche nel pannello cliente dopo l’accesso su kowal.store. Sostituisci TWOJ_EMAIL_KLIENTA con l’indirizzo e-mail del tuo account e TWOJ_TOKEN con il token ricevuto. Esegui i comandi nella directory principale di Magento.
composer config repositories.kowal composer https://repo.kowal.storeSe il repository è privato, configura il token di accesso:
composer config http-basic.repo.kowal.store 'TWOJ_EMAIL_KLIENTA' 'TWOJ_TOKEN'Installa il modulo:
composer require kowal/module-outletproductsAbilita il modulo:
php bin/magento module:enable Kowal_OutletProductsEsegui l’aggiornamento del database:
php bin/magento setup:upgradeIn ambiente di produzione, esegui la compilazione DI e il deploy delle risorse statiche secondo il processo di distribuzione dello store:
php bin/magento setup:di:compilephp bin/magento setup:static-content:deployPulisci la cache:
php bin/magento cache:flushAggiornamento di un’installazione esistente
Dopo l’aggiornamento del modulo, esegui:
composer update kowal/module-outletproductsphp bin/magento setup:upgradephp bin/magento cache:flushSe lo store opera in production mode, esegui anche i passaggi standard di deploy:
php bin/magento setup:di:compilephp bin/magento setup:static-content:deploysetup:upgrade è richiesto perché il modulo aggiunge e aggiorna gli attributi prodotto utilizzati per gestire OUTLET e le copie dei prezzi speciali.
Attributi prodotto
Il modulo aggiunge o utilizza i seguenti attributi:
| Attributo | Significato |
|---|---|
sale | Contrassegna il prodotto come OUTLET. |
special_price_copy | Copia del valore special_price prima dell’ingresso del prodotto in OUTLET. |
special_from_date_copy | Copia della data special_from_date. |
special_to_date_copy | Copia della data special_to_date. |
special_price_copy_active | Indicatore che informa che la copia del prezzo speciale è stata eseguita. |
Configurazione nel pannello di amministrazione
Vai a:
Stores > Configuration > kowal > OUTLET ProductsOpzioni disponibili:
| Opzione | Descrizione |
|---|---|
Włącz moduł Outlet | Abilita o disabilita il funzionamento del modulo. |
Usuń ceny specjalne dla produktów po wyprzedaży | Determina se, al termine di OUTLET, il prezzo speciale deve essere cancellato. Se l’opzione è disabilitata, il modulo ripristinerà il prezzo dalla copia. |
Kategorie outletowe | Elenco delle categorie a cui vengono assegnati i prodotti OUTLET e dalle quali vengono successivamente rimossi automaticamente. |
Wyłącz zarządzanie stanem magazynowym po wyprzedaży | Consente di disabilitare manage_stock al termine della vendita promozionale. |
Włącz backorder po zakończeniu wyprzedaży outletowej | Consente di abilitare il backorder e contrassegnare il prodotto come disponibile al termine della vendita outlet. |
La configurazione è disponibile a livello default, website e store. Le categorie OUTLET utilizzate dal cron vengono recuperate dalla configurazione predefinita.
Configurazione delle categorie OUTLET
- Crea in Magento una o più categorie destinate all’outlet.
- Assicurati che le categorie siano attive e visibili nel menu o nel listing, se devono essere accessibili ai clienti.
- Nella configurazione del modulo, seleziona tutte le categorie outlet nel campo
Kategorie outletowe. - Salva la configurazione.
- Pulisci la cache di Magento.
php bin/magento cache:flushImportazione dei prodotti in OUTLET
Vai al pannello:
kowal > Upload Outlet ProductsNel modulo:
- Incolla l’elenco degli SKU, uno SKU per riga.
- Seleziona le categorie OUTLET.
- Facoltativamente, seleziona i website a cui il prodotto deve essere assegnato.
- Scegli se il modulo deve abilitare la gestione delle scorte per i prodotti importati.
- Fai clic su
Importuj.
Esempio di elenco SKU:
TSHIRT-BLACK-MTSHIRT-BLACK-LJACKET-NAVY-XLSHOES-WHITE-42Durante l’importazione il modulo:
- assegna i prodotti alle categorie OUTLET,
- imposta l’attributo
sale, - aggiorna i parent configurable,
- crea una copia del prezzo speciale e delle date della promozione,
- aggiorna lo stock in base all’opzione selezionata,
- aggiorna gli indici e la cache di prodotti e categorie.
Gestione dei prodotti configurabili
Se il prodotto importato è una variante di un prodotto configurabile, il modulo cerca il parent e lo assegna alla categoria OUTLET. In questo modo il prodotto configurabile compare nel listing della categoria e il cliente può scegliere la variante outlet.
Durante il ricalcolo ciclico, il modulo verifica se il parent ha ancora varianti OUTLET attive. In caso contrario, il parent viene scollegato dalla categoria OUTLET.
Gestione dei prezzi speciali
Durante l’importazione in OUTLET, il modulo salva una copia di:
special_price,special_from_date,special_to_date.
La copia viene salvata in base allo scope dell’attributo del prezzo speciale in Magento:
- per i prezzi globali: a livello globale,
- per i prezzi per website: a livello della store view predefinita di ciascun website,
- per i prezzi per store: a livello di store view.
Il modulo non converte le valute. Magento memorizza i prezzi come valori di base per lo scope appropriato, mentre la presentazione delle valute sul frontend resta gestita dai meccanismi standard di Magento.
Il comportamento al termine di OUTLET dipende dall’opzione Usuń ceny specjalne dla produktów po wyprzedaży:
Tak: il modulo cancella il prezzo speciale ed elimina la copia tecnica,Nie: il modulo ripristina il prezzo speciale e le date dalla copia, quindi elimina la copia tecnica.
Cron
Il modulo dispone di un task cron:
kowal_outletproducts_outletIl task avvia l’helper OUTLET e controlla ciclicamente i prodotti outlet. Il cron rimuove i prodotti dalle categorie OUTLET quando non dovrebbero più essere visibili lì e aggiorna gli indici e la cache.
Dopo l’installazione, assicurati che il cron Magento funzioni correttamente:
php bin/magento cron:runIn ambiente di produzione, il cron deve essere eseguito dal crontab di sistema dell’utente dell’applicazione Magento.
Avvio manuale del ricalcolo
Il ricalcolo può essere avviato manualmente da CLI:
php bin/magento kowal_outletproducts:generateIl comando esegue lo stesso processo avviato dal cron.
Indici e cache
Dopo le modifiche, il modulo aggiorna gli indici prodotto e catalogo più importanti:
catalog_product_price,catalog_product_category,catalogsearch_fulltext,inventory,cataloginventory_stock.
Il modulo pulisce anche la cache dei tag di prodotti e categorie OUTLET, così il listing della categoria dovrebbe aggiornarsi dopo la modifica dello stato o lo scollegamento del prodotto.
Se necessario, è possibile forzare una reindicizzazione completa:
php bin/magento indexer:reindexphp bin/magento cache:flushTest dopo il deploy
Test funzionale consigliato:
- Seleziona un prodotto semplice con giacenza di magazzino.
- Imposta per il prodotto un prezzo speciale e le date della promozione.
- Aggiungi il prodotto a OUTLET tramite il pannello di importazione.
- Verifica che il prodotto sia comparso nella categoria OUTLET.
- Verifica che l’attributo
saleabbia il valoreTak. - Per un prodotto configurabile, verifica che il parent sia comparso in OUTLET.
- Modifica lo stato del prodotto in modo che non sia salable.
- Esegui il cron o il comando CLI.
- Verifica che il prodotto sia stato rimosso dalla categoria OUTLET.
- Verifica che il prezzo speciale sia stato ripristinato oppure rimosso in base alla configurazione.
Problemi più frequenti
Il prodotto è ancora visibile in OUTLET
Verifica:
- se il cron Magento è in esecuzione,
- se il prodotto non ha ancora
sale = 1, - se il prodotto è assegnato a una delle categorie configurate come OUTLET,
- se gli indici e la cache sono stati aggiornati.
Comandi di supporto:
php bin/magento cron:runphp bin/magento indexer:reindexphp bin/magento cache:flushIl parent configurable è ancora in OUTLET
Verifica se una qualsiasi variante del prodotto ha ancora sale = 1. Il parent viene mantenuto in OUTLET finché dispone di una variante outlet attiva.
Il prezzo speciale non è stato ripristinato
Verifica:
- se il prodotto era stato aggiunto in precedenza a OUTLET dopo l’installazione degli attributi di copia,
- se l’attributo
special_price_copy_activeera impostato, - se la configurazione
Usuń ceny specjalne dla produktów po wyprzedażyè impostata suNie, - quale scope dei prezzi è impostato in Magento.
I prezzi differiscono tra le store view
Verifica la configurazione dello scope dei prezzi in Magento. Il modulo non converte le valute e non sincronizza i prezzi tra store view. Ripristina i valori salvati per lo scope di prezzo appropriato.
Disinstallazione
Se il modulo deve essere disabilitato:
php bin/magento module:disable Kowal_OutletProductsphp bin/magento setup:upgradephp bin/magento cache:flushRimozione del pacchetto Composer:
composer remove kowal/module-outletproductsphp bin/magento setup:upgradephp bin/magento cache:flushPrima di rimuovere il modulo, si consiglia di verificare se i prodotti richiedono la pulizia manuale dell’attributo sale o lo scollegamento dalla categoria OUTLET.