Modulo Export Import Categories per Magento 2
- SKU
- M2-EXPORT-IMPORT-CATEGORIES
Descrizione / Modulo Export Import Categories per Magento 2
Kowal_ExportImportCategories è un modulo Magento 2 che consente di esportare e importare gli attributi delle categorie in formato CSV tenendo conto dello store view selezionato. L estensione è stata progettata per negozi che operano con più versioni linguistiche, più viste negozio o che devono aggiornare in massa i dati delle categorie senza modificare manualmente ogni categoria nel pannello di amministrazione.
Il modulo consente di esportare le categorie in un file CSV, modificare gli attributi selezionati al di fuori di Magento e quindi reimportare i dati in modalità di aggiornamento delle categorie esistenti o di creazione di nuove categorie. L importazione opera sullo store view indicato, permettendo di preparare comodamente traduzioni di nomi, descrizioni, meta tag, URL e altri attributi delle categorie.
A chi è destinato questo modulo
Il modulo è destinato a:
- negozi Magento 2 con più versioni linguistiche,
- team content che lavorano su fogli CSV,
- agenzie che trasferiscono cataloghi di categorie tra ambienti,
- amministratori che devono aggiornare in massa nomi, descrizioni, meta dati e URL delle categorie,
- negozi che dispongono di attributi categoria personalizzati e desiderano gestirli in modo massivo,
- progetti in cui i dati delle categorie vengono preparati al di fuori di Magento, ad esempio da traduttori, reparto SEO o sistema PIM.
Funzionalità principali
- Esportazione delle categorie in CSV per lo
store viewselezionato. - Importazione delle categorie da CSV per lo
store viewselezionato. - 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 necessarie per identificare le categorie.
- Validazione delle intestazioni CSV prima dell importazione.
- Validazione dei nomi delle colonne rispetto agli attributi categoria reali di Magento.
- Supporto degli attributi 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 nello store view o solo sulle sovrascritture dello store view.
- Modalità
dry-run, ovvero validazione completa dell importazione senza salvataggio dei dati. - Politica dei valori vuoti.
- Strategie di gestione di
url_key. - Creazione opzionale di permanent redirect in caso di modifica dell URL della categoria.
- Supporto dei percorsi delle immagini categoria.
- Batch processing per file più grandi.
- Politiche di gestione degli errori.
- Report di importazione in CSV.
- Cronologia delle importazioni nel pannello di amministrazione.
Esportazione delle categorie
L esportazione consente di generare un file CSV con le categorie per lo store view selezionato. L amministratore sceglie la vista negozio e gli attributi categoria da includere nel file. Il modulo aggiunge automaticamente le colonne di sistema necessarie per identificare le categorie e preservare la struttura ad albero.
L esportazione può essere utilizzata per:
- preparare traduzioni delle categorie,
- eseguire audit dei dati delle categorie,
- correggere in massa i meta dati SEO,
- confrontare i valori tra store view,
- preparare un file per l importazione nello stesso ambiente o in un altro,
- archiviare i dati categoria attuali prima delle modifiche.
Ambito dell esportazione
L esportazione include gli attributi delle categorie. Il modulo non esporta i prodotti assegnati alle categorie. Inoltre non esegue operazioni di eliminazione delle categorie.
L amministratore può selezionare:
Store View,- categoria iniziale,
- attributi da esportare,
- separatore CSV,
- modalità dei valori store view.
Modalità dei valori store view durante l esportazione
Il modulo supporta due modalità di esportazione dei valori:
resolved_value- viene esportato il valore visibile in un determinatostore view, quindi dopo aver considerato il fallback di Magento al valore predefinito.store_override_only- viene esportato solo il valore sovrascritto direttamente per un determinatostore view; se il valore è ereditato, la cella CSV resta vuota.
La modalità resolved_value è comoda per il lavoro editoriale, perché mostra il valore reale visibile nel negozio. La modalità store_override_only è utile quando è necessario controllare esclusivamente traduzioni o sovrascritture specifiche di una determinata vista negozio.
Importazione delle categorie
L importazione consente di caricare un file CSV e salvare gli attributi categoria selezionati per lo store view indicato. Lo store view selezionato nel modulo di importazione ha priorità, mentre la colonna store_view_code del CSV viene utilizzata per validare che il file sia coerente con la vista negozio selezionata.
L importazione può essere utilizzata per:
- tradurre categorie,
- aggiornare i nomi delle categorie,
- aggiornare le descrizioni delle categorie,
- aggiornare i meta tag,
- aggiornare
url_key, - creare nuove categorie,
- importare attributi categoria personalizzati,
- aggiornare gli attributi di menu e visibilità,
- importare percorsi delle immagini categoria.
Modalità update
La modalità update aggiorna le categorie esistenti. Il modulo non crea nuove categorie in questa modalità.
La categoria viene cercata principalmente tramite entity_id. Se entity_id non è disponibile, il modulo può usare category_path, purché il percorso indichi in modo univoco una sola categoria.
La modalità update è consigliata per:
- traduzioni di categorie tra store view,
- correzioni SEO,
- aggiornamenti delle descrizioni,
- aggiornamenti dei nomi,
- modifiche dei valori degli attributi categoria personalizzati.
Esempio di scenario di traduzione:
- Esportazione delle categorie dallo store view di base.
- Modifica di
store_view_codenel CSV con il codice dello store view di destinazione. - Mantenimento degli stessi
entity_id. - Inserimento delle traduzioni nelle colonne
name,description,meta_title,meta_description. - Importazione in modalità
updateper lo store view di destinazione.
In questa variante il modulo salva gli attributi selezionati nel contesto dello store_id numerico selezionato nel modulo di 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 un genitore indicato tramite:
parent_entity_id,- oppure
parent_path.
La modalità insert è consigliata per:
- creare nuove strutture di categorie,
- trasferire l albero delle categorie tra ambienti,
- preparare categorie in un foglio CSV,
- creare categorie sulla base di 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 file CSV deve contenere le intestazioni delle colonne. Le colonne si dividono in:
- colonne di sistema,
- colonne degli attributi categoria.
Le colonne degli attributi devono corrispondere ai codici attributo Magento, ad esempio:
name,url_key,description,meta_title,meta_description,is_active,include_in_menu.
Colonne di sistema
Il modulo utilizza 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 trattate come attributi EAV. Servono per identificare le categorie, validare lo store view e ricostruire la struttura ad albero.
Esempio di CSV per l aggiornamento
store_view_code,entity_id,category_path,name,url_key,is_active,include_in_menu,meta_titlepl,13,Default Category/Gear/Bags,Torby,torby,1,1,Torbypl,14,Default Category/Gear/Fitness Equipment,Sprzet fitness,sprzet-fitness,1,1,Sprzet fitnessEsempio di CSV per la creazione di categorie
store_view_code,parent_entity_id,parent_path,category_path,name,url_key,is_active,include_in_menudefault,12,Default Category/Gear,Default Category/Gear/Helmets,Helmets,helmets,1,1default,12,Default Category/Gear,Default Category/Gear/Gloves,Gloves,gloves,1,1Lavorare con attributi testuali
Il modulo salva i valori nel CSV come testo. In questo modo il file può essere modificato in un foglio di calcolo, inviato a un traduttore o preparato automaticamente in un sistema esterno.
Per gli attributi di tipo select e multiselect il modulo lavora sulle label delle opzioni, non sugli ID tecnici delle opzioni. Ciò significa che nel CSV sono visibili valori leggibili, come Products only, Position o Price.
Per multiselect più valori vengono separati dal separatore |.
Esempio:
store_view_code,entity_id,category_path,display_mode,available_sort_by,default_sort_bydefault,13,Default Category/Gear/Bags,Products only,Position|Product Name|Price,PositionSe la label dell opzione non esiste o non è univoca, l importazione segnalerà un errore di validazione.
Politica dei valori vuoti
Durante l importazione l amministratore sceglie come interpretare le celle CSV vuote:
skip_empty- una cella vuota non modifica il valore esistente.clear_value- una cella vuota cancella il valore dell attributo per lo store view selezionato.use_default- una cella vuota rimuove la sovrascrittura dello store view e consente a Magento di usare il valore predefinito.
Per impostazione predefinita, la variante consigliata per gli aggiornamenti è skip_empty, perché riduce il rischio di cancellare accidentalmente i dati.
Gestione degli URL delle categorie
Il modulo consente di configurare la strategia di gestione di url_key:
use_csv_value- usa il valore dal CSV.generate_from_name- generaurl_keysulla base dell attributoname.keep_existing- in modalitàupdatemantiene l attualeurl_key.magento_default- lascia la gestione degli URL al meccanismo standard di Magento.
L amministratore può inoltre decidere se, in caso di modifica di url_key, debbano essere creati permanent redirects.
Questa configurazione è particolarmente importante per le traduzioni, perché diversi negozi possono utilizzare strategie diverse:
- URL tradotti per ogni lingua,
- URL comuni 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 categoria se le colonne corrispondenti vengono selezionate per l importazione.
Directory sorgente predefinita:
pub/media/import/categoriesNel CSV viene indicato il percorso testuale relativo a questa directory, ad esempio:
gear/bags.jpgIl modulo valida l esistenza del file e l estensione. Sono supportati formati grafici sicuri, come:
jpg,jpeg,png,webp,gif.
Modalità dry-run
La modalità dry-run consente di avviare la validazione dell importazione senza salvare dati in Magento.
In questa modalità il modulo:
- legge il CSV,
- valida le intestazioni,
- valida lo store view,
- verifica l esistenza delle categorie o dei genitori,
- verifica 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 più ampia.
Batch processing
L importazione funziona a lotti. La dimensione del batch può essere configurata nel modulo di importazione.
Valore predefinito:
100 wierszyIl batch processing riduce il rischio di timeout e consumo eccessivo di memoria con file più grandi.
Politica degli errori
Il modulo supporta tre varianti di comportamento in caso di errori:
skip_invalid_rows- le righe errate vengono ignorate, mentre quelle corrette continuano a essere importate.stop_on_first_error- l importazione si interrompe al primo errore.all_or_nothing- se una qualsiasi riga contiene un errore, i dati non vengono salvati.
La variante consigliata per importazioni di grandi dimensioni è skip_invalid_rows, perché consente di elaborare i dati corretti e ottenere un report dei problemi per le righe rimanenti.
Report e cronologia delle importazioni
Dopo l importazione il modulo genera un report CSV contenente:
- numero di riga,
- identificatore della categoria,
- stato,
- messaggio,
- elenco degli attributi modificati.
La cronologia delle importazioni è disponibile nel pannello di amministrazione. L amministratore può verificare:
- data dell importazione,
- utente admin,
- store view,
- modalità di importazione,
- nome del file,
- numero di righe,
- numero di successi,
- numero di errori,
- informazione se l importazione è stata eseguita come
dry-run, - scaricare il report di importazione.
Sicurezza
Il modulo utilizza ACL Magento e aggiunge autorizzazioni separate per esportazione, importazione e cronologia delle importazioni.
L importazione è protetta da:
- validazione delle intestazioni,
- validazione dei codici attributo,
- validazione dello store view,
- validazione delle colonne richieste,
- validazione dei tipi di valore,
- validazione delle label delle opzioni,
- validazione dei file immagine,
- reporting degli errori per riga.
Il modulo non elimina categorie e non importa prodotti assegnati alle categorie.
Casi d uso tipici
Traduzioni delle categorie
Esporti le categorie dallo store view di base, completi le traduzioni nel CSV, modifichi store_view_code con il codice dello store view di destinazione e importi i dati in modalità update.
Aggiornamento SEO massivo
Esporti gli attributi meta_title, meta_description, url_key, li modifichi nel CSV e importi solo le colonne selezionate.
Creazione di una nuova struttura di categorie
Prepari un file CSV con category_path, parent_path, name e altri attributi richiesti, quindi lo importi in modalità insert.
Aggiornamento degli attributi categoria personalizzati
Se il negozio dispone di attributi categoria personalizzati, il modulo li recupera dinamicamente da EAV e consente di selezionarli in esportazione e importazione.
Posizione nel pannello Magento
Dopo l installazione il modulo è disponibile in:
System > Data Transfer > Export/Import CategoriesViste disponibili:
Export Categories,Import Categories,Import History.
More Information
| 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 modulo Kowal_ExportImportCategories per Magento 2. La guida include le informazioni del file README.md e 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
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 nell'area cliente dopo aver effettuato 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.store2. 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 con il tuo token di accesso.
3. Installa il modulo
composer require kowal/module-export-import-categories4. Abilita il modulo in Magento
bin/magento module:enable Kowal_ExportImportCategories5. Esegui l'aggiornamento di Magento
bin/magento setup:upgrade6. Svuota la cache
bin/magento cache:flush7. Facoltativamente, esegui la compilazione DI
Negli ambienti di produzione o in modalità production:
bin/magento setup:di:compile8. Facoltativamente, distribuisci le risorse statiche
Se l'ambiente lo richiede:
bin/magento setup:static-content:deploybin/magento cache:flushInstallazione manuale in app/code
In alternativa, il modulo può essere inserito manualmente nella directory:
app/code/Kowal/ExportImportCategoriesDopo aver copiato i file, esegui:
bin/magento module:enable Kowal_ExportImportCategoriesbin/magento setup:upgradebin/magento cache:flushIn modalità production esegui anche:
bin/magento setup:di:compileVerifica dell'installazione
Dopo l'installazione, verifica che il modulo sia attivo:
bin/magento module:status Kowal_ExportImportCategoriesIl modulo dovrebbe essere presente nell'elenco dei moduli attivi.
Nel pannello di amministrazione vai a:
System > Data Transfer > Export/Import CategoriesDovrebbero 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 RolesQuindi assegna le autorizzazioni appropriate per le risorse del modulo.
Posizione del modulo nel pannello
Il modulo è disponibile in:
System > Data Transfer > Export/Import CategoriesViste:
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_value esporta il valore visibile nello store view selezionato dopo aver applicato il fallback di Magento.
store_override_only esporta 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 numerico store_id utilizzato durante il salvataggio nelle tabelle Magento.
La colonna store_view_code del CSV non viene convertita direttamente in store_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.
update aggiorna le categorie esistenti.
insert crea 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:
errorEmpty Values Policy
Definisce come il modulo interpreta le celle CSV vuote.
Varianti disponibili:
skip_empty,clear_value,use_default.
skip_empty significa che una cella vuota non modificherà il valore attuale.
clear_value significa che una cella vuota cancellerà il valore dell'attributo.
use_default significa 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_emptyURL Key Strategy
Definisce il modo di gestire l'attributo url_key.
Varianti disponibili:
use_csv_value,generate_from_name,keep_existing,magento_default.
use_csv_value salva url_key dal CSV.
generate_from_name genera url_key in base al valore name.
keep_existing mantiene l'url_key esistente in modalità update.
magento_default lascia 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 cambia url_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 a pub/media.
Predefinita:
import/categoriesPercorso completo in Magento:
pub/media/import/categoriesSe nel CSV indichi:
gear/bags.jpgil modulo cercherà il file:
pub/media/import/categories/gear/bags.jpgError Policy
Definisce il comportamento dell'importazione in caso di errori.
Varianti disponibili:
skip_invalid_rows,stop_on_first_error,all_or_nothing.
skip_invalid_rows salta le righe non valide e continua l'importazione.
stop_on_first_error interrompe l'importazione al primo errore.
all_or_nothing richiede 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_rowsBatch Size
Numero di righe elaborate in un singolo batch.
Predefinito:
100Un 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 eseguire dry-run prima dell'importazione effettiva, soprattutto per file di grandi dimensioni o modifiche SEO.
Modalità import/update
La modalità update serve 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_descriptionpl,13,Default Category/Gear/Bags,Torby,torby,Torby,Torby i akcesoriapl,14,Default Category/Gear/Gloves,Rekawiczki,rekawiczki,Rekawiczki,Rekawiczki sportoweImpostazioni 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à insert serve 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_id non è 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_menudefault,12,Default Category/Gear,Default Category/Gear/Helmets,Helmets,helmets,1,1default,12,Default Category/Gear,Default Category/Gear/Gloves,Gloves,gloves,1,1Impostazioni 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 gestisce select e multiselect tramite 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_bydefault,13,Default Category/Gear/Bags,Products only,Position|Product Name|Price,PositionPer multiselect 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/categoriesEsempio di CSV:
store_view_code,entity_id,category_path,image,thumbnaildefault,13,Default Category/Gear/Bags,gear/bags.jpg,gear/bags-thumb.jpgImpostazioni 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 HistoryLo 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:cleanSe lo store richiede una reindicizzazione manuale dopo modifiche rilevanti al catalogo:
bin/magento indexer:reindexNelle 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ù comuni
L'importazione segnala uno store_view_code non corrispondente
Verifica che il codice nella colonna store_view_code corrisponda allo store view selezionato nel modulo di importazione.
L'importazione non modifica i valori
Verifica:
- 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
Verifica:
- 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
Verifica parent_entity_id oppure parent_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-categoriesbin/magento setup:upgradebin/magento cache:flushPrima della disinstallazione, assicurati che lo storico delle importazioni possa essere rimosso. Il modulo crea la tabella:
kowal_export_import_categories_historyCustomer Reviews
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.