Modulo Export Import Categories per Magento 2
- Compatibilità
- 2.4.9, 2.4.8, 2.4.7, 2.4.6, 2.4.5, 2.4.4, 2.4.3, 2.4.2, 2.4.1, 2.4.0, 2.3.7, 2.3.6, 2.3.5, 2.3.4
Descrizione / Modulo Export Import Categories per Magento 2
MAGENTO 2 · CATEGORIE · CSV · STORE VIEW
Aggiorna le categorie in massa e nella lingua scelta.
Kowal Export Import Categories
Esporta gli attributi delle categorie in CSV, prepara le modifiche nel foglio e importale nella vista negozio corretta. Controlla valori vuoti, URL, immagini e report di ogni esecuzione.
Update e Insert · Dry Run · Traduzioni e attributi personalizzati
COME FUNZIONA IN PRATICA
01 · Esporti i dati selezionati
Indichi store view, ambito delle categorie e attributi.
02 · Prepari e controlli il CSV
Modifichi i valori e avvii la validazione senza salvataggio.
03 · Importi controllando il risultato
Scegli le politiche di salvataggio e analizzi il report delle righe.
Cosa ottiene il tuo negozio?
Scopri le funzioni, l'utilizzo e le impostazioni del modulo.
Scopri il modulo
Kowal_ExportImportCategories è un modulo Magento 2 per esportare e importare gli attributi delle categorie in formato CSV considerando la store view. L'estensione è pensata per negozi con più lingue o viste negozio e per chi deve aggiornare in massa i dati delle categorie senza modificarle una per una nel pannello amministrativo.
Il modulo permette di esportare le categorie in CSV, modificare gli attributi scelti fuori da Magento e reimportarli aggiornando categorie esistenti oppure creandone di nuove. L'importazione opera sulla store view, facilitando la preparazione delle traduzioni di nomi, descrizioni, meta tag, URL e altri attributi delle categorie.
A chi è destinato questo modulo
Il modulo è destinato a:
- negozi Magento 2 multilingue,
- team di contenuti che lavorano con fogli CSV,
- agenzie che implementano cataloghi di categorie tra ambienti,
- amministratori che devono aggiornare in massa nomi, descrizioni, metadati e URL delle categorie,
- negozi con attributi di categoria personalizzati da gestire in massa,
- progetti in cui i dati delle categorie vengono preparati fuori da Magento, ad esempio da traduttori, reparto SEO o sistema PIM.
Funzioni principali
- Esportazione delle categorie in CSV per la
store view. - Importazione delle categorie da CSV per la
store view. - Modalità di aggiornamento delle categorie esistenti:
update. - Modalità di creazione di nuove categorie:
insert. - Selezione degli attributi esportati in CSV.
- Selezione degli attributi importati da CSV.
- Colonne di sistema automatiche per identificare le categorie.
- Validazione delle intestazioni CSV prima dell'importazione.
- Validazione dei nomi delle colonne rispetto agli attributi reali delle categorie Magento.
- Supporto degli attributi di categoria personalizzati aggiunti in Magento.
- Supporto dei valori testuali per tutti gli attributi.
- Supporto degli attributi
selectemultiselecttramite le label delle opzioni. - Possibilità di lavorare sui valori visibili nella store view o solo sulle relative sovrascritture.
- La modalità
dry-run, cioè validazione completa dell'importazione senza salvare dati. - Politica dei valori vuoti.
- Strategie di gestione di
url_key. - Creazione facoltativa di redirect permanenti quando cambia l'URL della categoria.
- Supporto dei percorsi delle immagini delle categorie.
- Elaborazione in lotti per file più grandi.
- Politiche di gestione degli errori.
- Report dell'importazione in CSV.
- Cronologia delle importazioni nel pannello amministrativo.
Esportazione delle categorie
L'esportazione genera un CSV con le categorie per la store view. L'amministratore sceglie vista negozio e attributi da includere. Il modulo aggiunge automaticamente le colonne di sistema necessarie a identificare le categorie e conservare la struttura dell'albero.
L'esportazione può servire a:
- preparare traduzioni delle categorie,
- verificare i dati delle categorie,
- correggere in massa i metadati SEO,
- confrontare i valori tra store view,
- preparare un file da importare nello stesso ambiente o in un altro,
- archiviare i dati correnti delle categorie prima delle modifiche.
Ambito dell'esportazione
L'esportazione comprende gli attributi delle categorie. Il modulo non esporta i prodotti assegnati alle categorie e non elimina categorie.
L'amministratore può scegliere:
Store View,- categoria iniziale,
- attributi da esportare,
- separatore CSV,
- modalità dei valori della store view.
Modalità dei valori della store view nell'esportazione
Il modulo supporta due modalità di esportazione dei valori:
resolved_value- viene esportato il valore visibile nellastore view, considerando il fallback Magento al valore predefinito.store_override_only- viene esportato solo il valore sovrascritto direttamente per lastore view; se il valore è ereditato, la cella CSV rimane vuota.
La modalità resolved_value è comodo per il lavoro editoriale perché mostra il valore realmente visibile nel negozio. La modalità store_override_only è utile per controllare solo traduzioni o sovrascritture specifiche della vista negozio.
Importazione delle categorie
L'importazione legge un CSV e salva gli attributi scelti delle categorie per la store view. La store view selezionata nel modulo d'importazione ha la precedenza e la colonna store_view_code del CSV serve a verificare che il file corrisponda alla vista negozio scelta.
L'importazione può servire a:
- tradurre le categorie,
- aggiornare i nomi delle categorie,
- aggiornare le descrizioni delle categorie,
- aggiornare i meta tag,
- aggiornare
url_key, - creare nuove categorie,
- importare attributi di categoria personalizzati,
- aggiornare attributi di menu e visibilità,
- importare percorsi delle immagini delle categorie.
Modalità update
La modalità update aggiorna categorie esistenti. In questa modalità il modulo non crea nuove categorie.
La categoria viene cercata principalmente tramite entity_id. Se entity_id non è disponibile, il modulo può usare category_path, purché il percorso identifichi in modo univoco una categoria.
La modalità update è consigliato per:
- traduzioni delle categorie tra store view,
- correzioni SEO,
- aggiornamenti delle descrizioni,
- aggiornamenti dei nomi,
- modifiche ai valori degli attributi di categoria personalizzati.
Scenario di traduzione di esempio:
- Esportazione delle categorie dalla store view di base.
- Modifica di
store_view_codenel CSV con il codice della store view di destinazione. - Conservazione degli stessi
entity_id. - Inserimento delle traduzioni nelle colonne
name,description,meta_title,meta_description. - Importazione in modalità
updateper la store view di destinazione.
In questo caso il modulo salva gli attributi selezionati nel contesto del valore numerico store_id scelto nel modulo d'importazione.
Modalità insert
La modalità insert crea nuove categorie. In questa modalità entity_id non è richiesto, perché Magento lo assegna automaticamente.
La nuova categoria deve avere il genitore indicato tramite:
parent_entity_id,- oppure
parent_path.
La modalità insert è consigliato per:
- creare nuove strutture di categorie,
- trasferire l'albero delle categorie tra ambienti,
- preparare categorie in un foglio CSV,
- creare categorie da dati esterni.
Se l'importazione contiene sia genitore sia figlio, i dati devono essere ordinati dalle categorie di livello superiore a quelle di livello inferiore.
Formato CSV
La prima riga del CSV deve contenere le intestazioni delle colonne. Le colonne si dividono in:
- colonne di sistema,
- colonne degli attributi delle categorie.
Le colonne degli attributi devono corrispondere ai codici degli attributi Magento, ad esempio:
name,url_key,description,meta_title,meta_description,is_active,include_in_menu.
Colonne di sistema
Il modulo usa le seguenti colonne di sistema:
store_view_code,entity_id,parent_entity_id,category_path,parent_path,level,position,attribute_set_id.
Le colonne di sistema non sono attributi EAV. Servono a identificare le categorie, validare la store view e ricostruire la struttura dell'albero.
Esempio CSV per l'aggiornamento
store_view_code,entity_id,category_path,name,url_key,is_active,include_in_menu,meta_title
pl,13,Default Category/Gear/Bags,Torby,torby,1,1,Torby
pl,14,Default Category/Gear/Fitness Equipment,Sprzet fitness,sprzet-fitness,1,1,Sprzet fitness
Esempio CSV per la creazione delle categorie
store_view_code,parent_entity_id,parent_path,category_path,name,url_key,is_active,include_in_menu
default,12,Default Category/Gear,Default Category/Gear/Helmets,Helmets,helmets,1,1
default,12,Default Category/Gear,Default Category/Gear/Gloves,Gloves,gloves,1,1
Lavorare con attributi testuali
Il modulo salva i valori nel CSV come testo. Il file può quindi essere modificato in un foglio di calcolo, passato a un traduttore o preparato automaticamente in un sistema esterno.
Per gli attributi di tipo select e multiselect il modulo usa le etichette delle opzioni anziché i loro ID tecnici. Nel CSV appaiono quindi valori leggibili, come Products only, Position oppure Price.
Per multiselect più valori vengono separati dal separatore |.
Esempio:
store_view_code,entity_id,category_path,display_mode,available_sort_by,default_sort_by
default,13,Default Category/Gear/Bags,Products only,Position|Product Name|Price,Position
Se l'etichetta di un'opzione non esiste o non è univoca, l'importazione segnala un errore di validazione.
Politica dei valori vuoti
Durante l'importazione l'amministratore sceglie come interpretare le celle CSV vuote:
skip_empty- la cella vuota non modifica il valore esistente.clear_value- la cella vuota cancella il valore dell'attributo per la store view selezionata.use_default- la cella vuota elimina la sovrascrittura della store view e permette a Magento di usare il valore predefinito.
La variante generalmente consigliata per gli aggiornamenti è skip_empty, perché riduce il rischio di cancellare dati accidentalmente.
Gestione degli URL delle categorie
Il modulo permette di configurare la strategia di gestione di url_key:
use_csv_value- usa il valore del CSV.generate_from_name- generaurl_keyin base all'attributoname.keep_existing- in modalitàupdateconserva l'attualeurl_key.magento_default- lascia la gestione dell'URL al meccanismo standard Magento.
L'amministratore può inoltre decidere se, alla modifica di url_key , devono essere creati redirect permanenti.
Questa configurazione è particolarmente rilevante nelle traduzioni perché i negozi possono adottare strategie diverse:
- URL tradotti per ogni lingua,
- URL condivisi tra versioni linguistiche,
- URL generati automaticamente dai nomi delle categorie,
- URL SEO gestiti manualmente.
Immagini delle categorie
Il modulo può importare gli attributi delle immagini delle categorie se le colonne appropriate vengono selezionate per l'importazione.
Directory sorgente predefinita:
pub/media/import/categories
Nel CSV viene indicato un percorso testuale relativo a questa directory, ad esempio:
gear/bags.jpg
Il modulo verifica esistenza del file ed estensione. Sono supportati formati grafici sicuri, come:
jpg,jpeg,png,webp,gif.
Modalità dry-run
La modalità dry-run permette di validare l'importazione senza salvare dati in Magento.
In questa modalità il modulo:
- legge il CSV,
- valida le intestazioni,
- valida la store view,
- controlla l'esistenza delle categorie o dei genitori,
- controlla gli attributi,
- mappa i valori
selectemultiselect, - controlla le immagini,
- genera un report di errori e avvisi,
- non salva le categorie.
È il primo passaggio consigliato prima di ogni importazione estesa.
Elaborazione in lotti
L'importazione opera in lotti. La dimensione del lotto può essere configurata nel modulo d'importazione.
Valore predefinito:
100 wierszy
L'elaborazione in lotti riduce il rischio di timeout e consumo eccessivo di memoria con file grandi.
Politica degli errori
Il modulo supporta tre comportamenti in caso di errori:
skip_invalid_rows- le righe errate vengono saltate e quelle corrette continuano a essere importate.stop_on_first_error- l'importazione si ferma al primo errore.all_or_nothing- se la validazione di una qualsiasi riga rileva un errore prima del salvataggio, l'importazione non inizia a salvare.
La variante consigliata per le importazioni grandi è skip_invalid_rows, perché permette di elaborare i dati corretti e ottenere un report dei problemi per le altre righe.
Report e cronologia delle importazioni
Dopo l'importazione il modulo genera un report CSV con:
- numero di riga,
- identificatore della categoria,
- stato,
- messaggio,
- elenco degli attributi modificati.
La cronologia delle importazioni è disponibile nel pannello amministrativo. L'amministratore può controllare:
- data dell'importazione,
- utente admin,
- store view,
- modalità di importazione,
- nome del file,
- numero di righe,
- numero di successi,
- numero di errori,
- se l'importazione è stata eseguita come
dry-run, - scaricare il report dell'importazione.
Sicurezza
Il modulo usa gli ACL Magento e aggiunge permessi separati per esportazione, importazione e cronologia.
L'importazione è protetta da:
- validazione delle intestazioni,
- validazione dei codici degli attributi,
- validazione della store view,
- validazione delle colonne obbligatorie,
- validazione dei tipi di valori,
- validazione delle etichette delle opzioni,
- validazione dei file immagine,
- segnalazione degli errori per riga.
Il modulo non elimina categorie e non importa i prodotti assegnati alle categorie.
Traduzioni delle categorie
Esporti le categorie dalla store view di base, inserisci le traduzioni nel CSV e cambi store_view_code con il codice della store view di destinazione, poi importi i dati in modalità update.
Aggiornamento SEO di massa
Esporti gli attributi meta_title, meta_description, url_key, li modifichi nel CSV e importi solo le colonne scelte.
Creazione di una nuova struttura di categorie
Prepari un CSV con category_path, parent_path, name e gli altri attributi obbligatori, poi lo importi in modalità insert.
Aggiornamento degli attributi di categoria personalizzati
Se il negozio ha attributi di categoria personalizzati, il modulo li recupera dinamicamente da EAV e permette di sceglierli per esportazione e importazione.
Posizione nel pannello Magento
Dopo l'installazione il modulo è disponibile in:
System > Data Transfer > Export/Import Categories
Viste disponibili:
Export Categories,Import Categories,Import History.
Il modulo d'importazione determina la vista negozio
System → Data Transfer → Export/Import Categories offre esportazione, importazione e cronologia. La store view scelta nel modulo definisce il contesto di salvataggio; store_view_code nel file serve a verificarne la corrispondenza.
Trasferendo dati tra istanze, verifica identificatori dei genitori e percorsi delle categorie. L'esportazione degli attributi non trasferisce prodotti né assegnazioni alle categorie.
All or nothing ed errori durante il salvataggio
La modalità all_or_nothing valida tutte le righe prima di iniziare il salvataggio. Un errore di validazione ferma l'importazione.
Il processo attuale salva poi le categorie singolarmente e non comprende l'intero file in un'unica transazione. Un errore di salvataggio non annulla automaticamente le categorie già salvate: analizza il report e conserva un'esportazione prima delle modifiche.
Installazione tramite Composer
Il pacchetto kowal/module-export-import-categories, modulo Kowal_ExportImportCategories. Dopo aver configurato l'accesso al repository Kowal, installa il pacchetto, abilita il modulo, aggiorna Magento e svuota la cache. In produzione, includi compilazione e deploy dei contenuti statici secondo il processo del negozio.
Dalla configurazione al risultato
1. Esporti i dati selezionati
Indichi store view, ambito delle categorie e attributi.
2. Prepari e controlli il CSV
Modifichi i valori e avvii la validazione senza salvataggio.
3. Importi controllando il risultato
Scegli le politiche di salvataggio e analizzi il report delle righe.
Traduzioni delle categorie dal foglio
Esporti nomi, descrizioni e metadati. Conservi gli identificatori delle categorie, cambi il codice della vista nel CSV e prepari le traduzioni.
Dopo dry-run importi le colonne selezionate in modalità update nella store view di destinazione. Le celle vuote vengono interpretate secondo la politica d'importazione scelta.
Migliora il lavoro con categorie e traduzioni
Vuoi adattare il modulo al tuo negozio? Richiedi l'implementazione di Kowal Export Import Categories e discuti la configurazione o le estensioni necessarie.
Maggiori Informazioni
| Conformità al modello | Luma / Vuoto, Fabbro |
|---|
Istruzioni per l'installazione del modulo
Guida all'installazione e alla configurazione del modulo Kowal_ExportImportCategories
Questo documento descrive l'installazione, la configurazione e l'utilizzo del moduloKowal_ExportImportCategoriesper Magento 2. La guida include le informazioni del fileREADME.mde le funzionalità implementate nel modulo.
Requisiti
- Magento 2.
- PHP compatibile con l'installazione Magento, PHP
8.1o versioni successive consigliato. - Accesso alla CLI di Magento.
- Accesso a Composer.
- Autorizzazioni di amministratore Magento.
- Accesso al repository del modulo.
- Per l'importazione delle immagini: possibilità di inserire file nella directory
pub/media/import/categories.
Installazione tramite Composer
Il modulo è disponibile tramite repository Composer.
1. Aggiungi il repository Composer
I dati di accesso al repository Composer, ovvero l indirizzo e-mail del cliente e il token di licenza, saranno inviati via e-mail dopo l acquisto. 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.store
2. Configura l'accesso al repository Composer Kowal
Configura i dati di accesso al repository Composer Kowal:
composer config http-basic.repo.kowal.store "TWOJ_EMAIL_KLIENTA" "TWOJ_TOKEN"
Sostituisci<YOUR_TOKEN>con il tuo token di accesso.
3. Installa il modulo
composer require kowal/module-export-import-categories
4. Abilita il modulo in Magento
bin/magento module:enable Kowal_ExportImportCategories
5. Esegui l'aggiornamento di Magento
bin/magento setup:upgrade
6. Svuota la cache
bin/magento cache:flush
7. Facoltativamente, esegui la compilazione DI
Negli ambienti di produzione o in modalità production:
bin/magento setup:di:compile
8. Facoltativamente, distribuisci le risorse statiche
Se l'ambiente lo richiede:
bin/magento setup:static-content:deploy
bin/magento cache:flush
Installazione manuale in app/code
In alternativa, il modulo può essere inserito manualmente nella directory:
app/code/Kowal/ExportImportCategories
Dopo aver copiato i file, esegui:
bin/magento module:enable Kowal_ExportImportCategories
bin/magento setup:upgrade
bin/magento cache:flush
In modalità production esegui anche:
bin/magento setup:di:compile
Verifica dell'installazione
Dopo l'installazione, verifica che il modulo sia attivo:
bin/magento module:status Kowal_ExportImportCategories
Il modulo dovrebbe essere presente nell'elenco dei moduli attivi.
Nel pannello di amministrazione vai a:
System > Data Transfer > Export/Import Categories
Dovrebbero essere visibili tre voci:
Export Categories,Import Categories,Import History.
Autorizzazioni ACL
Il modulo aggiunge autorizzazioni amministrative separate:
- accesso alla sezione principale
Export/Import Categories, - esportazione delle categorie,
- importazione delle categorie,
- storico delle importazioni.
Se l'utente admin non vede il menu del modulo, controlla il ruolo dell'utente in:
System > Permissions > User Roles
Quindi assegna le autorizzazioni appropriate per le risorse del modulo.
Posizione del modulo nel pannello
Il modulo è disponibile in:
System > Data Transfer > Export/Import Categories
Viste:
Export Categories- esportazione delle categorie in CSV.Import Categories- importazione delle categorie da CSV.Import History- storico delle importazioni e report.
Configurazione dell'esportazione
La vista di esportazione consente di generare un file CSV con le categorie.
Campi di esportazione
Store View
Seleziona lo store view da cui verranno letti i valori degli attributi delle categorie.
Se selezioni uno store view linguistico, l'esportazione può contenere valori specifici per quello store view oppure valori ereditati dallo scope predefinito, a seconda della modalità dei valori.
Start Category ID
Campo opzionale che consente di limitare l'esportazione alla categoria selezionata e al relativo sottoalbero.
Se il campo viene lasciato vuoto, il modulo esporta le categorie a partire dalla root category dello store view selezionato.
Store View Value Mode
Definisce come esportare i valori dipendenti dallo store view.
Varianti disponibili:
resolved_value,store_override_only.
resolved_valueesporta il valore visibile nello store view selezionato dopo aver applicato il fallback di Magento.
store_override_onlyesporta solo il valore sovrascritto per lo store view selezionato. Se il valore è ereditato dal default scope, la cella CSV sarà vuota.
CSV Delimiter
Separatore CSV. Predefinito:
,
È possibile utilizzare un separatore diverso se il file sarà modificato in uno strumento che richiede, ad esempio, il punto e virgola.
Attributes
Elenco degli attributi di categoria disponibili in Magento.
Il modulo recupera gli attributi dinamicamente da EAV, quindi nell'elenco possono comparire anche attributi di categoria personalizzati aggiunti nel progetto.
Le colonne di sistema vengono aggiunte automaticamente e non devono essere selezionate.
Colonne di sistema nell'esportazione
L'esportazione dovrebbe sempre contenere le colonne di sistema:
store_view_code,entity_id,parent_entity_id,category_path,parent_path,level,position,attribute_set_id.
Queste colonne servono per identificare le categorie, validare lo store view e gestire la struttura ad albero.
Configurazione dell'importazione
La vista di importazione consente di caricare un CSV e salvare i dati delle categorie.
Campi di importazione
Store View
Seleziona lo store view in cui verranno salvati i valori.
Questo campo determina il valore numericostore_idutilizzato durante il salvataggio nelle tabelle Magento.
La colonnastore_view_codedel CSV non viene convertita direttamente instore_id. Viene utilizzata per validare se il file corrisponde allo store view selezionato.
Esempio:
- nel modulo selezioni uno store view con
store_id = 1, - nel CSV deve essere presente
store_view_codecorrispondente a quello store view, - il modulo salva i dati utilizzando
store_id = 1.
Import Mode
Modalità disponibili:
update,insert.
updateaggiorna le categorie esistenti.
insertcrea nuove categorie.
CSV File
File CSV con intestazioni nella prima riga.
Il file deve essere codificato in UTF-8.
CSV Delimiter
Separatore CSV. Deve corrispondere al separatore utilizzato nel file.
Unknown Columns Policy
Definisce il comportamento per le colonne che non sono né colonne di sistema né attributi di categoria noti.
Varianti disponibili:
error- l'importazione segnala un errore per le colonne sconosciute.ignore- le colonne sconosciute vengono ignorate.
Variante consigliata:
error
Empty Values Policy
Definisce come il modulo interpreta le celle CSV vuote.
Varianti disponibili:
skip_empty,clear_value,use_default.
skip_emptysignifica che una cella vuota non modificherà il valore attuale.
clear_valuesignifica che una cella vuota cancellerà il valore dell'attributo.
use_defaultsignifica che una cella vuota rimuoverà la sovrascrittura dello store view e consentirà a Magento di utilizzare il valore predefinito.
Variante consigliata per l'importazione di aggiornamento:
skip_empty
URL Key Strategy
Definisce il modo di gestire l'attributourl_key.
Varianti disponibili:
use_csv_value,generate_from_name,keep_existing,magento_default.
use_csv_valuesalvaurl_keydal CSV.
generate_from_namegeneraurl_keyin base al valorename.
keep_existingmantiene l'url_keyesistente in modalitàupdate.
magento_defaultlascia la gestione dell'URL al meccanismo standard di Magento.
Create permanent redirect for URL key changes
L'opzione definisce se Magento deve creare un permanent redirect quando cambiaurl_key.
Vale la pena abilitarla quando la modifica dell'URL della categoria deve mantenere i redirect SEO dai vecchi indirizzi.
Images Base Directory
Directory di base per l'importazione delle immagini di categoria relativa apub/media.
Predefinita:
import/categories
Percorso completo in Magento:
pub/media/import/categories
Se nel CSV indichi:
gear/bags.jpg
il modulo cercherà il file:
pub/media/import/categories/gear/bags.jpg
Error Policy
Definisce il comportamento dell'importazione in caso di errori.
Varianti disponibili:
skip_invalid_rows,stop_on_first_error,all_or_nothing.
skip_invalid_rowssalta le righe non valide e continua l'importazione.
stop_on_first_errorinterrompe l'importazione al primo errore.
all_or_nothingrichiede la correttezza dell'intero file; se si verifica un errore, l'importazione non dovrebbe salvare dati.
Variante consigliata per file di grandi dimensioni:
skip_invalid_rows
Batch Size
Numero di righe elaborate in un singolo batch.
Predefinita:
100
Un valore più basso limita il consumo di memoria. Un valore più alto può accelerare l'importazione su ambienti più potenti.
Attributes to Import
Elenco degli attributi da importare.
L'importazione aggiorna solo gli attributi selezionati. Se la colonna esiste nel CSV ma l'attributo non viene selezionato nel modulo, il modulo non dovrebbe salvarlo.
Dry Run
Modalità di validazione senza salvataggio dei dati.
È consigliato eseguiredry-runprima dell'importazione effettiva, soprattutto per file di grandi dimensioni o modifiche SEO.
Modalità import/update
La modalitàupdateserve ad aggiornare categorie esistenti.
Dati richiesti
Il CSV deve contenere:
store_view_code,entity_idoppurecategory_path,- almeno una colonna dell'attributo selezionato.
Come funziona l'identificazione delle categorie
Il modulo prova a trovare la categoria tramite:
entity_id,category_path, seentity_idè vuoto.
entity_idè il miglior identificatore quando l'importazione avviene nello stesso ambiente Magento.
category_pathè più portabile tra ambienti, ma deve essere univoco.
Esempio di aggiornamento delle traduzioni
store_view_code,entity_id,category_path,name,url_key,meta_title,meta_description
pl,13,Default Category/Gear/Bags,Torby,torby,Torby,Torby i akcesoria
pl,14,Default Category/Gear/Gloves,Rekawiczki,rekawiczki,Rekawiczki,Rekawiczki sportowe
Impostazioni di importazione:
Store View: store view polacco,Import Mode:update,Attributes to Import:name,url_key,meta_title,meta_description,URL Key Strategy:use_csv_value,Empty Values Policy:skip_empty,- prima
Dry Run, poi l'importazione effettiva.
Modalità import/insert
La modalitàinsertserve a creare nuove categorie.
Dati richiesti
Il CSV deve contenere:
store_view_code,category_path,parent_entity_idoppureparent_path,name,- almeno una colonna dell'attributo selezionato.
entity_idnon è richiesto, perché Magento lo assegna automaticamente.
Esempio di creazione di categorie
store_view_code,parent_entity_id,parent_path,category_path,name,url_key,is_active,include_in_menu
default,12,Default Category/Gear,Default Category/Gear/Helmets,Helmets,helmets,1,1
default,12,Default Category/Gear,Default Category/Gear/Gloves,Gloves,gloves,1,1
Impostazioni di importazione:
Store View: default store view,Import Mode:insert,Attributes to Import:name,url_key,is_active,include_in_menu,URL Key Strategy:use_csv_valueoppuregenerate_from_name,Error Policy:skip_invalid_rows,- prima
Dry Run.
Utilizzo di select e multiselect
Il modulo gestisceselectemultiselecttramite le label delle opzioni.
Non è necessario indicare gli ID tecnici delle opzioni.
Esempio:
store_view_code,entity_id,category_path,display_mode,available_sort_by,default_sort_by
default,13,Default Category/Gear/Bags,Products only,Position|Product Name|Price,Position
Permultiselect più valori vengono separati con il separatore:
|
Se la label non esiste o è ambigua, l'importazione segnalerà un errore.
Importazione delle immagini di categoria
Prima di importare le immagini, inserisci i file nella directory:
pub/media/import/categories
Esempio di CSV:
store_view_code,entity_id,category_path,image,thumbnail
default,13,Default Category/Gear/Bags,gear/bags.jpg,gear/bags-thumb.jpg
Impostazioni di importazione:
Images Base Directory:import/categories,- attributi selezionati:
image,thumbnail.
Il modulo verificherà se i file esistono e hanno estensioni supportate.
Report di importazione
Dopo l'importazione, il modulo genera un report CSV.
Il report contiene:
- numero di riga,
- identificatore della categoria,
- stato,
- messaggio,
- attributi modificati.
Gli stati possono includere:
success,error,skipped_no_change,skipped_existing.
Storico delle importazioni
Lo storico delle importazioni è disponibile in:
System > Data Transfer > Export/Import Categories > Import History
Lo storico contiene:
- data dell'importazione,
- utente admin,
- store view,
- modalità di importazione,
- nome del file,
- numero di righe,
- numero di successi,
- numero di errori,
- informazione su
dry-run, - link per scaricare il report.
Processo di lavoro consigliato
Importazione di aggiornamento sicura
- Esegui l'esportazione delle categorie attuali.
- Conserva il file originale come backup.
- Prepara le modifiche in una copia del CSV.
- Assicurati che
store_view_codecorrisponda allo store view di destinazione. - Seleziona l'importazione
update. - Seleziona solo gli attributi che desideri modificare.
- Imposta
Empty Values Policysuskip_empty. - Esegui
Dry Run. - Controlla il report.
- Esegui l'importazione effettiva.
- Svuota la cache se le modifiche non sono subito visibili.
Importazione sicura di nuove categorie
- Prepara un CSV con
category_path,parent_pathoppureparent_entity_id. - Assicurati che le categorie padre esistano o compaiano prima nel file.
- Seleziona l'importazione
insert. - Seleziona almeno
namee gli altri attributi richiesti. - Esegui
Dry Run. - Correggi gli errori indicati nel report.
- Esegui l'importazione effettiva.
Cache e indici
Dopo aver importato modifiche alle categorie, è consigliabile aggiornare la cache di Magento:
bin/magento cache:clean
Se lo store richiede una reindicizzazione manuale dopo modifiche rilevanti al catalogo:
bin/magento indexer:reindex
Nelle installazioni Magento tipiche, il salvataggio delle categorie tramite i meccanismi standard di Magento dovrebbe avviare i processi appropriati collegati al modello di categoria, ma dopo importazioni di grandi dimensioni è consigliato controllare cache e indici.
Problemi più frequenti
L'importazione segnala uno store_view_code non corrispondente
Verifica che il codice nella colonnastore_view_codecorrisponda allo store view selezionato nel modulo di importazione.
L'importazione non modifica i valori
Controlla:
- se l'attributo è stato selezionato in
Attributes to Import, - se la cella CSV non è vuota,
- se
Empty Values Policynon è impostato suskip_empty, - se l'importazione non è stata eseguita come
Dry Run.
Select o multiselect segnala un errore
Verifica che la label dell'opzione nel CSV corrisponda esattamente alla label dell'opzione in Magento per lo store view selezionato.
L'immagine non viene importata
Controlla:
- se il file esiste in
pub/media/import/categories, - se il percorso nel CSV è corretto,
- se l'estensione del file è supportata,
- se l'attributo immagine è stato selezionato per l'importazione.
Insert segnala un genitore mancante
Verificaparent_entity_idoppureparent_path. La categoria padre deve esistere in Magento oppure trovarsi prima nel file di importazione.
Disinstallazione del modulo
Se il modulo è stato installato tramite Composer:
composer remove kowal/module-export-import-categories
bin/magento setup:upgrade
bin/magento cache:flush
Prima della disinstallazione, assicurati che lo storico delle importazioni possa essere rimosso. Il modulo crea la tabella:
kowal_export_import_categories_historyRecensioni dei clienti
Cliente
tandembaits.com è un negozio online che opera nel settore della pesca. L’offerta del negozio si basa su un assortimento specializzato, in cui nomi corretti delle categorie, descrizioni precise e URL ben preparati hanno un impatto diretto sull’usabilità del negozio, sulla SEO e sulla comunicazione con i clienti in diversi Paesi.
Sfida
Nell’ambito dell’espansione del negozio con nuove versioni linguistiche, il cliente aveva bisogno di un modo efficace per gestire le categorie in Magento 2.
Il problema principale era la specificità del settore della pesca. I nomi delle categorie non sono etichette semplici e universali. Spesso si riferiscono a tecniche di pesca specifiche, tipi di esche, accessori, serie di prodotti oppure concetti utilizzati solo dai pescatori esperti.
Con 10 versioni linguistiche, la gestione manuale delle categorie nel pannello Magento era troppo dispendiosa in termini di tempo e soggetta a errori. Il cliente aveva bisogno di avere il pieno controllo su:
- nomi delle categorie,
- URL delle categorie,
- descrizioni delle categorie,
- metadati SEO,
- valori specifici per ogni store view,
- coerenza della struttura delle categorie tra le versioni linguistiche.
La portata del lavoro comprendeva diverse decine di categorie in 10 versioni linguistiche. Ciò significava centinaia di valori testuali da preparare, verificare, correggere e importare.
Problema di business
Il lavoro standard nel pannello Magento avrebbe richiesto la modifica di ogni categoria separatamente per ogni store view. Con diverse decine di categorie e 10 lingue, un processo del genere sarebbe stato lento e difficile da controllare.
I rischi principali del lavoro manuale:
- errori nella selezione dello store view,
- traduzioni incoerenti dei nomi delle categorie,
- sovrascrittura accidentale dei valori predefiniti,
- URL errati o duplicati,
- mancanza di una comoda panoramica di tutte le categorie in un unico posto,
- difficoltà nel trasferire i dati ai traduttori o alle persone responsabili della SEO,
- mancanza di un modo semplice per convalidare le modifiche prima del salvataggio.
Il cliente aveva bisogno di un processo che permettesse di preparare i dati in blocco, verificarli prima dell’importazione e salvare in sicurezza solo gli attributi selezionati per uno store view specifico.
Soluzione
Per questo scenario è stato utilizzato il modulo Export Import Categories per Magento 2.
Il modulo ha consentito l’esportazione delle categorie in un file CSV, la preparazione dei dati linguistici al di fuori del pannello Magento e la successiva importazione dei valori nello store view selezionato.
Il processo è stato basato sulla modalità update, poiché la struttura delle categorie esisteva già nel negozio. L’obiettivo non era creare un nuovo albero delle categorie, ma completare e correggere i dati per le versioni linguistiche successive.
Ambito di utilizzo del modulo
Nel progetto sono state fondamentali le seguenti funzioni del modulo:
- esportazione delle categorie dallo store view di base,
- mantenimento di
entity_idcome identificatore stabile della categoria, - modifica di
store_view_codecon il codice della versione linguistica di destinazione, - importazione in modalità
update, - selezione degli attributi specifici da importare,
- gestione dei nomi delle categorie,
- gestione di
url_key, - gestione delle descrizioni delle categorie,
- controllo dei valori vuoti,
- convalida del file prima dell’importazione vera e propria,
- report di importazione.
Processo implementato nel progetto
1. Esportazione delle categorie
Per prima cosa è stata eseguita l’esportazione delle categorie dallo store view di base. Il file CSV conteneva colonne di sistema e attributi selezionati necessari per preparare le versioni linguistiche.
Le colonne di sistema più importanti:
store_view_code,entity_id,category_path,parent_path.
Gli attributi operativi più importanti:
name,url_key,description,meta_title,meta_description.
2. Preparazione dei dati linguistici
Sulla base del CSV esportato sono stati preparati dati separati per le singole versioni linguistiche.
Grazie a ciò, le persone responsabili dei contenuti potevano lavorare in un foglio di calcolo, visualizzando contemporaneamente molte categorie. Questo era particolarmente importante nel settore della pesca, dove i nomi delle categorie devono essere coerenti con la terminologia locale e con il modo reale in cui i clienti cercano i prodotti.
3. Mantenimento degli identificatori delle categorie
Nei file di importazione è stato mantenuto entity_id, in modo che il modulo potesse associare in modo univoco le righe CSV alle categorie Magento esistenti.
Questo ha permesso di importare le traduzioni senza il rischio di creare categorie duplicate.
4. Modifica dello store view
Per ogni versione linguistica veniva impostato nel CSV il corretto store_view_code e veniva selezionato lo stesso store view nel modulo di importazione.
Il modulo convalidava la coerenza di questi dati. In questo modo è stato ridotto il rischio di importare accidentalmente le traduzioni nello store view sbagliato.
5. Importazione in modalità update
L’importazione veniva eseguita in modalità update, selezionando solo gli attributi da modificare per quella versione linguistica.
In questo modo il modulo non interferiva con gli altri dati della categoria.
6. Convalida e dry-run
Prima dell’importazione vera e propria, era possibile eseguire una convalida senza salvare i dati.
La modalità dry-run permetteva di verificare:
- se il file CSV avesse le colonne corrette,
- se
store_view_codecorrispondesse allo store view selezionato, - se
entity_idindicasse categorie esistenti, - se gli attributi selezionati esistessero in Magento,
- se l’importazione non contenesse errori che bloccano il salvataggio.
7. Report dopo l’importazione
Dopo l’importazione, il modulo generava un report che consentiva di verificare lo stato delle singole righe.
Il report era particolarmente utile quando si lavorava su molte lingue, perché permetteva di individuare rapidamente eventuali errori in un file specifico o in una categoria specifica.
Perché il CSV era il formato giusto
Il CSV era un formato pratico per questo progetto, perché:
- può essere facilmente modificato in un foglio di calcolo,
- può essere passato ai traduttori,
- consente di confrontare i valori tra le lingue,
- consente di preparare molte versioni linguistiche a partire da una sola esportazione,
- consente di lavorare su colonne specifiche senza cliccare manualmente nel pannello Magento,
- consente di mantenere il controllo su
entity_idestore_view_code.
Risultato
Il modulo ha consentito al cliente di gestire le categorie in 10 versioni linguistiche in modo ordinato e ripetibile.
Invece di modificare manualmente ogni categoria nel pannello Magento, il team poteva lavorare su file CSV, preparare le traduzioni in blocco e importare solo gli attributi selezionati per uno store view specifico.
I principali vantaggi:
- preparazione più rapida delle nuove versioni linguistiche,
- maggiore controllo sui nomi delle categorie,
- pieno controllo sugli URL,
- gestione più semplice delle descrizioni delle categorie,
- possibilità di lavorare al di fuori del pannello Magento,
- minor rischio di errori con molti store view,
- convalida dei dati prima del salvataggio,
- reporting dei risultati dell’importazione.
Importanza per la SEO
Nel progetto era particolarmente importante la possibilità di controllare url_key, i nomi delle categorie e le descrizioni.
Per un negozio che opera in molte lingue, la traduzione automatica o la copia accidentale dei nomi delle categorie non è sufficiente. Ogni mercato può utilizzare termini di settore diversi e, nella pesca, le differenze terminologiche sono particolarmente rilevanti.
Il modulo ha permesso di preparare consapevolmente i valori SEO per ogni versione linguistica:
- nomi delle categorie locali,
- URL locali,
- descrizioni adattate alla lingua,
- meta title,
- meta description.
Sintesi
L’espansione di tandembaits.com con 10 versioni linguistiche richiedeva uno strumento che permettesse di gestire in modo efficiente le categorie Magento 2 a livello di store view.
Export Import Categories ha risolto questo problema, spostando il lavoro dalla modifica manuale nel pannello Magento a un processo controllato basato su CSV, convalida e importazione degli attributi selezionati.
Di conseguenza, il cliente ha ottenuto la possibilità di gestire comodamente nomi di categorie specialistiche, URL e descrizioni per molte lingue senza il rischio di sovrascrivere accidentalmente l’intera struttura delle categorie.