Modul Export Import Categories pentru Magento 2
- Compatibilitate
- 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
Descriere / Modul Export Import Categories pentru Magento 2
Kowal_ExportImportCategories este un modul Magento 2 care permite exportul și importul atributelor de categorie în format CSV, ținând cont de store view selectat. Extensia a fost creată pentru magazinele care lucrează cu mai multe versiuni lingvistice, mai multe vizualizări ale magazinului sau care trebuie să actualizeze în masă datele categoriilor fără editarea manuală a fiecărei categorii în panoul de administrare.
Modulul permite exportul categoriilor într-un fișier CSV, modificarea atributelor selectate în afara Magento, iar apoi importul datelor înapoi în modul de actualizare a categoriilor existente sau de creare a unor categorii noi. Importul funcționează pentru store view indicat, ceea ce permite pregătirea comodă a traducerilor pentru denumiri, descrieri, meta taguri, URL-uri și alte atribute ale categoriilor.
Pentru cine este acest modul
Modulul este destinat pentru:
- magazine Magento 2 cu mai multe versiuni lingvistice,
- echipe de content care lucrează cu fișiere CSV,
- agenții care implementează cataloage de categorii între medii,
- administratori care trebuie să actualizeze în masă denumiri, descrieri, meta date și URL-uri ale categoriilor,
- magazine care au atribute proprii pentru categorii și doresc să le gestioneze colectiv,
- proiecte în care datele categoriilor sunt pregătite în afara Magento, de exemplu de traducători, departamentul SEO sau un sistem PIM.
Cele mai importante funcționalități
- Exportul categoriilor în CSV pentru
store viewselectat. - Importul categoriilor din CSV pentru
store viewselectat. - Mod de actualizare a categoriilor existente:
update. - Mod de creare a categoriilor noi:
insert. - Selectarea atributelor exportate în CSV.
- Selectarea atributelor importate din CSV.
- Coloane de sistem automate necesare pentru identificarea categoriilor.
- Validarea antetelor CSV înainte de import.
- Validarea denumirilor coloanelor față de atributele reale ale categoriilor Magento.
- Suport pentru atribute proprii ale categoriilor adăugate în Magento.
- Suport pentru valori text pentru toate atributele.
- Suport pentru atribute
selectșimultiselectpe baza etichetelor opțiunilor. - Posibilitatea de a lucra cu valorile vizibile în store view sau doar cu suprascrierile store view.
- Mod
dry-run, adică validarea completă a importului fără salvarea datelor. - Politica valorilor goale.
- Strategii de gestionare
url_key. - Crearea opțională de permanent redirect la schimbarea URL-ului categoriei.
- Suport pentru căile către imaginile categoriilor.
- Batch processing pentru fișiere mai mari.
- Politici de gestionare a erorilor.
- Raport de import în CSV.
- Istoricul importurilor în panoul de administrare.
Exportul categoriilor
Exportul permite generarea unui fișier CSV cu categoriile pentru store view selectat. Administratorul alege vizualizarea magazinului și atributele categoriilor care trebuie incluse în fișier. Modulul adaugă automat coloanele de sistem necesare pentru identificarea categoriilor și păstrarea structurii arborelui.
Exportul poate fi utilizat pentru:
- pregătirea traducerilor categoriilor,
- auditarea datelor categoriilor,
- corectarea în masă a meta datelor SEO,
- compararea valorilor între store view-uri,
- pregătirea fișierului pentru import pe același mediu sau pe un alt mediu,
- arhivarea datelor curente ale categoriilor înainte de modificări.
Domeniul exportului
Exportul include atributele categoriilor. Modulul nu exportă produsele atribuite categoriilor. De asemenea, nu efectuează operații de ștergere a categoriilor.
Administratorul poate selecta:
Store View,- categoria de pornire,
- atributele pentru export,
- separatorul CSV,
- modul valorilor store view.
Moduri ale valorilor store view la export
Modulul acceptă două moduri de export al valorilor:
resolved_value- este exportată valoarea vizibilă înstore viewdat, adică după luarea în considerare a fallback-ului Magento la valoarea implicită.store_override_only- este exportată doar valoarea suprascrisă direct pentrustore viewrespectiv; dacă valoarea este moștenită, celula CSV rămâne goală.
Modul resolved_value este comod pentru activitatea editorială, deoarece afișează valoarea reală vizibilă în magazin. Modul store_override_only este util atunci când trebuie controlate exclusiv traducerile sau suprascrierile specifice unei anumite vizualizări a magazinului.
Importul categoriilor
Importul permite încărcarea unui fișier CSV și salvarea atributelor selectate ale categoriilor pentru store view indicat. Store view-ul selectat în formularul de import este prioritar, iar coloana store_view_code din CSV este utilizată pentru validarea compatibilității fișierului cu vizualizarea magazinului selectată.
Importul poate fi utilizat pentru:
- traducerea categoriilor,
- actualizarea denumirilor categoriilor,
- actualizarea descrierilor categoriilor,
- actualizarea meta tagurilor,
- actualizarea
url_key, - crearea de categorii noi,
- importul atributelor proprii ale categoriilor,
- actualizarea atributelor de meniu și vizibilitate,
- importul căilor imaginilor categoriilor.
Modul update
Modul update actualizează categoriile existente. Modulul nu creează categorii noi în acest mod.
Categoria este căutată în primul rând după entity_id. Dacă entity_id nu este disponibil, modulul poate utiliza category_path, cu condiția ca această cale să indice fără ambiguitate o singură categorie.
Modul update este recomandat pentru:
- traduceri ale categoriilor între store view-uri,
- corecții SEO,
- actualizarea descrierilor,
- actualizarea denumirilor,
- schimbarea valorilor atributelor proprii ale categoriilor.
Exemplu de scenariu de traducere:
- Exportul categoriilor din store view-ul de bază.
- Schimbarea
store_view_codeîn CSV cu codul store view-ului țintă. - Păstrarea acelorași
entity_id. - Completarea traducerilor în coloanele
name,description,meta_title,meta_description. - Import în modul
updatepentru store view-ul țintă.
În această variantă, modulul salvează atributele selectate în contextul store_id numeric ales în formularul de import.
Modul insert
Modul insert creează categorii noi. În acest mod, entity_id nu este necesar, deoarece Magento îl atribuie automat.
Noua categorie trebuie să aibă părintele indicat prin:
parent_entity_id,- sau
parent_path.
Modul insert este recomandat pentru:
- crearea unor structuri noi de categorii,
- transferul arborelui de categorii între medii,
- pregătirea categoriilor într-un fișier CSV,
- crearea categoriilor pe baza datelor externe.
Dacă importul conține atât părintele, cât și copilul, datele trebuie ordonate de la categoriile de nivel superior către categoriile de nivel inferior.
Format CSV
Primul rând al fișierului CSV trebuie să conțină antetele coloanelor. Coloanele se împart în:
- coloane de sistem,
- coloane ale atributelor categoriilor.
Coloanele atributelor trebuie să corespundă codurilor atributelor Magento, de exemplu:
name,url_key,description,meta_title,meta_description,is_active,include_in_menu.
Coloane de sistem
Modulul utilizează următoarele coloane de sistem:
store_view_code,entity_id,parent_entity_id,category_path,parent_path,level,position,attribute_set_id.
Coloanele de sistem nu sunt tratate ca atribute EAV. Ele servesc la identificarea categoriilor, validarea store view-ului și reconstruirea structurii arborelui.
Exemplu CSV pentru actualizare
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 fitnessExemplu CSV pentru crearea categoriilor
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,1Lucrul cu atribute text
Modulul salvează valorile în CSV ca text. Astfel, fișierul poate fi editat într-o foaie de calcul, transmis unui traducător sau pregătit automat într-un sistem extern.
Pentru atributele de tip select și multiselect, modulul lucrează pe baza etichetelor opțiunilor, nu pe baza ID-urilor tehnice ale opțiunilor. Aceasta înseamnă că în CSV sunt vizibile valori lizibile, precum Products only, Position sau Price.
Pentru multiselect, mai multe valori sunt separate prin separatorul |.
Exemplu:
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,PositionDacă eticheta opțiunii nu există sau nu este neechivocă, importul va raporta o eroare de validare.
Politica valorilor goale
În timpul importului, administratorul alege modul de interpretare a celulelor CSV goale:
skip_empty- o celulă goală nu schimbă valoarea existentă.clear_value- o celulă goală șterge valoarea atributului pentru store view-ul selectat.use_default- o celulă goală elimină suprascrierea store view-ului și permite Magento să utilizeze valoarea implicită.
Varianta recomandată implicit pentru actualizări este skip_empty, deoarece reduce riscul de ștergere accidentală a datelor.
Gestionarea URL-urilor categoriilor
Modulul permite configurarea strategiei de gestionare url_key:
use_csv_value- utilizează valoarea din CSV.generate_from_name- genereazăurl_keype baza atributuluiname.keep_existing- în modulupdatepăstreazăurl_keyexistent.magento_default- lasă gestionarea URL-urilor mecanismului standard Magento.
Administratorul poate decide, de asemenea, dacă la schimbarea url_key trebuie create permanent redirects.
Această configurare este deosebit de importantă pentru traduceri, deoarece magazine diferite pot utiliza strategii diferite:
- URL-uri traduse pentru fiecare limbă,
- URL-uri comune între versiunile lingvistice,
- URL-uri generate automat din denumirile categoriilor,
- URL-uri SEO gestionate manual.
Imagini ale categoriilor
Modulul poate importa atributele imaginilor categoriilor dacă sunt selectate coloanele corespunzătoare pentru import.
Directorul sursă implicit:
pub/media/import/categoriesÎn CSV se indică o cale text relativă la acest director, de exemplu:
gear/bags.jpgModulul validează existența fișierului și extensia. Sunt acceptate formate grafice sigure, precum:
jpg,jpeg,png,webp,gif.
Modul dry-run
Modul dry-run permite rularea validării importului fără salvarea datelor în Magento.
În acest mod, modulul:
- citește CSV-ul,
- validează antetele,
- validează store view-ul,
- verifică existența categoriilor sau a părinților,
- verifică atributele,
- mapează valorile
selectșimultiselect, - verifică imaginile,
- generează raportul de erori și avertismente,
- nu salvează categoriile.
Acesta este primul pas recomandat înaintea fiecărui import mai mare.
Batch processing
Importul funcționează pe loturi. Dimensiunea batch-ului poate fi configurată în formularul de import.
Valoarea implicită:
100 wierszyBatch processing reduce riscul de timeout-uri și consum excesiv de memorie în cazul fișierelor mai mari.
Politica erorilor
Modulul acceptă trei variante de comportament la erori:
skip_invalid_rows- rândurile greșite sunt omise, iar cele corecte sunt importate în continuare.stop_on_first_error- importul se oprește după prima eroare.all_or_nothing- dacă oricare rând conține o eroare, datele nu sunt salvate.
Varianta recomandată pentru importurile mari este skip_invalid_rows, deoarece permite procesarea datelor corecte și obținerea unui raport al problemelor pentru rândurile rămase.
Rapoarte și istoricul importurilor
După import, modulul generează un raport CSV care conține:
- numărul rândului,
- identificatorul categoriei,
- statusul,
- mesajul,
- lista atributelor modificate.
Istoricul importurilor este disponibil în panoul de administrare. Administratorul poate verifica:
- data importului,
- utilizatorul admin,
- store view,
- modul de import,
- numele fișierului,
- numărul de rânduri,
- numărul de succese,
- numărul de erori,
- informația dacă importul a fost realizat ca
dry-run, - descărcarea raportului de import.
Securitate
Modulul utilizează ACL Magento și adaugă permisiuni separate pentru export, import și istoricul importurilor.
Importul este protejat prin:
- validarea antetelor,
- validarea codurilor atributelor,
- validarea store view-ului,
- validarea coloanelor obligatorii,
- validarea tipurilor de valori,
- validarea etichetelor opțiunilor,
- validarea fișierelor de imagini,
- raportarea erorilor pe fiecare rând.
Modulul nu șterge categorii și nu importă produse atribuite categoriilor.
Utilizări tipice
Traduceri ale categoriilor
Exportați categoriile din store view-ul de bază, completați traducerile în CSV, schimbați store_view_code cu codul store view-ului țintă și importați datele în modul update.
Actualizare SEO în masă
Exportați atributele meta_title, meta_description, url_key, le editați în CSV și importați doar coloanele selectate.
Crearea unei structuri noi de categorii
Pregătiți un fișier CSV cu category_path, parent_path, name și alte atribute necesare, apoi îl importați în modul insert.
Actualizarea atributelor proprii ale categoriilor
Dacă magazinul are atribute proprii pentru categorii, modulul le preia dinamic din EAV și permite selectarea lor la export și import.
Locația în panoul Magento
După instalare, modulul este disponibil în:
System > Data Transfer > Export/Import CategoriesVizualizări disponibile:
Export Categories,Import Categories,Import History.
Mai multe informații
| Conformitate cu șablonul | Luma / Blank, KOWAL |
|---|
Instrucțiuni de instalare a modulului
Instrucțiuni de instalare și configurare a modulului Kowal_ExportImportCategories
Acest document descrie instalarea, configurarea și utilizarea modulului Kowal_ExportImportCategories pentru Magento 2. Instrucțiunile includ informații din fișierul README.md și funcțiile implementate în modul.
Cerințe
- Magento 2.
- PHP compatibil cu instalarea Magento, se recomandă PHP
8.1sau mai nou. - Acces la CLI Magento.
- Acces la Composer.
- Drepturi de administrator Magento.
- Acces la repository-ul modulului.
- Pentru importul imaginilor: posibilitatea de a plasa fișiere în directorul
pub/media/import/categories.
Instalare prin Composer
Modulul este disponibil prin repository-ul Composer.
1. Adăugați repository-ul Composer
Datele de acces la repository-ul Composer adresa de e-mail a clientului și tokenul de licență le veți primi prin e-mail după achiziție. Sunt disponibile și în panoul clientului după autentificarea pe kowal.store. Înlocuiți TWOJ_EMAIL_KLIENTA cu adresa de e-mail a contului dvs., iar TWOJ_TOKEN cu tokenul primit. Executați comenzile în directorul rădăcină Magento.
composer config repositories.kowal composer https://repo.kowal.store2. Configurați accesul la repository-ul Composer Kowal
Configurați datele de acces la repository-ul Composer Kowal:
composer config http-basic.repo.kowal.store 'TWOJ_EMAIL_KLIENTA' 'TWOJ_TOKEN'Înlocuiți cu propriul token de acces.
3. Instalați modulul
composer require kowal/module-export-import-categories4. Activați modulul în Magento
bin/magento module:enable Kowal_ExportImportCategories5. Rulați actualizarea Magento
bin/magento setup:upgrade6. Goliți cache-ul
bin/magento cache:flush7. Opțional, rulați compilarea DI
Pe mediile de producție sau în modul production:
bin/magento setup:di:compile8. Opțional, deployați resursele statice
Dacă mediul o impune:
bin/magento setup:static-content:deploybin/magento cache:flushInstalare manuală în app/code
Alternativ, modulul poate fi plasat manual în directorul:
app/code/Kowal/ExportImportCategoriesDupă copierea fișierelor, rulați:
bin/magento module:enable Kowal_ExportImportCategoriesbin/magento setup:upgradebin/magento cache:flushÎn modul production, rulați și:
bin/magento setup:di:compileVerificarea instalării
După instalare, verificați dacă modulul este activ:
bin/magento module:status Kowal_ExportImportCategoriesModulul ar trebui să se afle pe lista modulelor active.
În panoul de administrare, accesați:
System > Data Transfer > Export/Import CategoriesAr trebui să fie vizibile trei poziții:
Export Categories,Import Categories,Import History.
Permisiuni ACL
Modulul adaugă permisiuni administrative separate:
- acces la secțiunea principală
Export/Import Categories, - exportul categoriilor,
- importul categoriilor,
- istoricul importurilor.
Dacă utilizatorul admin nu vede meniul modulului, verificați rolul utilizatorului în:
System > Permissions > User RolesApoi acordați permisiunile corespunzătoare pentru resursele modulului.
Localizarea modulului în panou
Modulul este disponibil la:
System > Data Transfer > Export/Import CategoriesVizualizări:
Export Categories- exportul categoriilor în CSV.Import Categories- importul categoriilor din CSV.Import History- istoricul importurilor și rapoarte.
Configurarea exportului
Vizualizarea de export permite generarea unui fișier CSV cu categorii.
Câmpuri de export
Store View
Selectează store view din care vor fi citite valorile atributelor categoriilor.
Dacă selectați un store view lingvistic, exportul poate conține valori specifice pentru acel store view sau valori moștenite din scope-ul implicit, în funcție de modul valorilor.
Start Category ID
Câmp opțional care permite limitarea exportului la categoria selectată și subarborele acesteia.
Dacă acest câmp rămâne gol, modulul exportă categoriile începând cu root category a store view-ului selectat.
Store View Value Mode
Definește modul de export al valorilor dependente de store view.
Variante disponibile:
resolved_value,store_override_only.
resolved_value exportă valoarea vizibilă în store view-ul selectat după aplicarea fallback-ului Magento.
store_override_only exportă doar valoarea suprascrisă pentru store view-ul selectat. Dacă valoarea este moștenită din default scope, celula CSV va fi goală.
CSV Delimiter
Separator CSV. Implicit:
,Se poate utiliza un alt separator dacă fișierul va fi editat într-un instrument care necesită, de exemplu, punct și virgulă.
Attributes
Lista atributelor categoriilor disponibile în Magento.
Modulul preia dinamic atributele din EAV, astfel încât în listă pot apărea și atribute proprii ale categoriilor adăugate în proiect.
Coloanele de sistem sunt adăugate automat și nu trebuie selectate.
Coloane de sistem în export
Exportul ar trebui să conțină întotdeauna coloane de sistem:
store_view_code,entity_id,parent_entity_id,category_path,parent_path,level,position,attribute_set_id.
Aceste coloane sunt utilizate pentru identificarea categoriilor, validarea store view-ului și gestionarea structurii arborescente.
Configurarea importului
Vizualizarea de import permite încărcarea unui CSV și salvarea datelor categoriilor.
Câmpuri de import
Store View
Selectează store view-ul în care vor fi salvate valorile.
Acest câmp decide valoarea numerică store_id utilizată la salvarea în tabelele Magento.
Coloana store_view_code din CSV nu este convertită direct în store_id. Este utilizată pentru validarea faptului că fișierul corespunde store view-ului selectat.
Exemplu:
- în formular selectați un store view cu
store_id = 1, - în CSV trebuie să existe
store_view_codecorespunzător acelui store view, - modulul salvează datele folosind
store_id = 1.
Import Mode
Moduri disponibile:
update,insert.
update actualizează categoriile existente.
insert creează categorii noi.
CSV File
Fișier CSV cu antete în primul rând.
Fișierul trebuie să fie codificat în UTF-8.
CSV Delimiter
Separator CSV. Trebuie să corespundă separatorului utilizat în fișier.
Unknown Columns Policy
Definește comportamentul pentru coloanele care nu sunt nici coloane de sistem, nici atribute cunoscute ale categoriilor.
Variante disponibile:
error- importul raportează o eroare pentru coloanele necunoscute.ignore- coloanele necunoscute sunt ignorate.
Variantă recomandată:
errorEmpty Values Policy
Definește modul în care modulul interpretează celulele CSV goale.
Variante disponibile:
skip_empty,clear_value,use_default.
skip_empty înseamnă că o celulă goală nu va modifica valoarea curentă.
clear_value înseamnă că o celulă goală va șterge valoarea atributului.
use_default înseamnă că o celulă goală va elimina suprascrierea store view-ului și va permite Magento să utilizeze valoarea implicită.
Variantă recomandată pentru importul de actualizare:
skip_emptyURL Key Strategy
Definește modul de gestionare a atributului url_key.
Variante disponibile:
use_csv_value,generate_from_name,keep_existing,magento_default.
use_csv_value salvează url_key din CSV.
generate_from_name generează url_key pe baza valorii name.
keep_existing păstrează url_key existent în modul update.
magento_default lasă gestionarea URL-ului mecanismului standard Magento.
Create permanent redirect for URL key changes
Opțiunea stabilește dacă Magento trebuie să creeze un permanent redirect la modificarea url_key.
Merită activată atunci când modificarea URL-ului categoriei trebuie să păstreze redirecționările SEO de la adresele vechi.
Images Base Directory
Directorul de bază pentru importul imaginilor categoriilor, relativ la pub/media.
Implicit:
import/categoriesCalea completă în Magento:
pub/media/import/categoriesDacă în CSV introduceți:
gear/bags.jpgmodulul va căuta fișierul:
pub/media/import/categories/gear/bags.jpgError Policy
Definește comportamentul importului în cazul erorilor.
Variante disponibile:
skip_invalid_rows,stop_on_first_error,all_or_nothing.
skip_invalid_rows omite rândurile eronate și continuă importul.
stop_on_first_error oprește importul după prima eroare.
all_or_nothing necesită ca întregul fișier să fie corect; dacă apare o eroare, importul nu ar trebui să salveze date.
Variantă recomandată pentru fișiere mari:
skip_invalid_rowsBatch Size
Numărul de rânduri procesate într-un singur batch.
Implicit:
100O valoare mai mică limitează consumul de memorie. O valoare mai mare poate accelera importul pe medii mai puternice.
Attributes to Import
Lista atributelor care urmează să fie importate.
Importul actualizează doar atributele selectate. Dacă o coloană există în CSV, dar atributul nu este bifat în formular, modulul nu ar trebui să îl salveze.
Dry Run
Mod de validare fără salvarea datelor.
Se recomandă rularea dry-run înainte de importul propriu-zis, în special pentru fișiere mari sau modificări SEO.
Modul import/update
Modul update este utilizat pentru actualizarea categoriilor existente.
Date necesare
CSV trebuie să conțină:
store_view_code,entity_idsaucategory_path,- cel puțin o coloană a atributului selectat.
Cum funcționează identificarea categoriilor
Modulul încearcă să găsească o categorie după:
entity_id,category_path, dacăentity_ideste gol.
entity_id este cel mai bun identificator atunci când importul se realizează pe același mediu Magento.
category_path este mai portabil între medii, dar trebuie să fie unic.
Exemplu de actualizare a traducerilor
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 sportoweSetări de import:
Store View: store view polonez,Import Mode:update,Attributes to Import:name,url_key,meta_title,meta_description,URL Key Strategy:use_csv_value,Empty Values Policy:skip_empty,- mai întâi
Dry Run, apoi importul propriu-zis.
Modul import/insert
Modul insert este utilizat pentru crearea de categorii noi.
Date necesare
CSV trebuie să conțină:
store_view_code,category_path,parent_entity_idsauparent_path,name,- cel puțin o coloană a atributului selectat.
entity_id nu este necesar, deoarece Magento îl atribuie automat.
Exemplu de creare a categoriilor
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,1Setări de import:
Store View: default store view,Import Mode:insert,Attributes to Import:name,url_key,is_active,include_in_menu,URL Key Strategy:use_csv_valuesaugenerate_from_name,Error Policy:skip_invalid_rows,- mai întâi
Dry Run.
Lucrul cu select și multiselect
Modulul gestionează select și multiselect pe baza labelurilor opțiunilor.
Nu este necesar să furnizați ID-urile tehnice ale opțiunilor.
Exemplu:
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,PositionPentru multiselect, valorile multiple se separă cu separatorul:
|Dacă labelul nu există sau este ambiguu, importul va raporta o eroare.
Importul imaginilor categoriilor
Înainte de importul imaginilor, plasați fișierele în directorul:
pub/media/import/categoriesExemplu CSV:
store_view_code,entity_id,category_path,image,thumbnaildefault,13,Default Category/Gear/Bags,gear/bags.jpg,gear/bags-thumb.jpgSetări de import:
Images Base Directory:import/categories,- atribute bifate:
image,thumbnail.
Modulul va verifica dacă fișierele există și au extensii acceptate.
Raport de import
După import, modulul generează un raport CSV.
Raportul conține:
- numărul rândului,
- identificatorul categoriei,
- statusul,
- mesajul,
- atributele modificate.
Statusurile pot include:
success,error,skipped_no_change,skipped_existing.
Istoricul importurilor
Istoricul importurilor este disponibil în:
System > Data Transfer > Export/Import Categories > Import HistoryIstoricul conține:
- data importului,
- utilizatorul admin,
- store view,
- modul de import,
- numele fișierului,
- numărul de rânduri,
- numărul de succese,
- numărul de erori,
- informații despre
dry-run, - link pentru descărcarea raportului.
Proces de lucru recomandat
Import de actualizare sigur
- Efectuați exportul categoriilor actuale.
- Păstrați fișierul original ca backup.
- Pregătiți modificările într-o copie a CSV-ului.
- Asigurați-vă că
store_view_codecorespunde store view-ului țintă. - Selectați importul
update. - Selectați doar atributele pe care doriți să le modificați.
- Setați
Empty Values Policylaskip_empty. - Rulați
Dry Run. - Verificați raportul.
- Rulați importul propriu-zis.
- Goliți cache-ul dacă modificările nu sunt vizibile imediat.
Import sigur de categorii noi
- Pregătiți CSV-ul cu
category_path,parent_pathsauparent_entity_id. - Asigurați-vă că părinții există sau apar mai devreme în fișier.
- Selectați importul
insert. - Bifați cel puțin
nameși alte atribute necesare. - Rulați
Dry Run. - Corectați erorile din raport.
- Rulați importul propriu-zis.
Cache și indexuri
După importul modificărilor în categorii, este recomandat să reîmprospătați cache-ul Magento:
bin/magento cache:cleanDacă magazinul necesită reindexare manuală după modificări mai ample ale catalogului:
bin/magento indexer:reindexÎn instalările Magento tipice, salvarea categoriilor prin mecanismele standard Magento ar trebui să pornească procesele corespunzătoare asociate modelului de categorie, însă după importuri mari se recomandă verificarea cache-ului și a indexurilor.
Cele mai frecvente probleme
Importul raportează un store_view_code incompatibil
Verificați dacă codul din coloana store_view_code corespunde store view-ului selectat în formularul de import.
Importul nu modifică valorile
Verificați:
- dacă atributul a fost bifat în
Attributes to Import, - dacă celula CSV nu este goală,
- dacă
Empty Values Policynu este setată laskip_empty, - dacă importul nu a fost rulat ca
Dry Run.
Select sau multiselect raportează o eroare
Verificați dacă labelul opțiunii din CSV corespunde exact labelului opțiunii din Magento pentru store view-ul selectat.
Imaginea nu se importă
Verificați:
- dacă fișierul există în
pub/media/import/categories, - dacă calea din CSV este corectă,
- dacă extensia fișierului este acceptată,
- dacă atributul imaginii a fost bifat pentru import.
Insert raportează lipsa părintelui
Verificați parent_entity_id sau parent_path. Părintele trebuie să existe în Magento sau să se afle mai devreme în fișierul de import.
Dezinstalarea modulului
Dacă modulul a fost instalat prin Composer:
composer remove kowal/module-export-import-categoriesbin/magento setup:upgradebin/magento cache:flushÎnainte de dezinstalare, asigurați-vă că istoricul importurilor poate fi șters. Modulul creează tabelul:
kowal_export_import_categories_historyRecenzii
Client
tandembaits.com este un magazin online care activează în domeniul pescuitului. Oferta magazinului se bazează pe un sortiment specializat, în care denumirile corecte ale categoriilor, descrierile precise și adresele URL bine pregătite au o importanță directă pentru utilizabilitatea magazinului, SEO și comunicarea cu clienții din diferite țări.
Provocare
În cadrul extinderii magazinului cu noi versiuni lingvistice, clientul avea nevoie de o modalitate eficientă de gestionare a categoriilor în Magento 2.
Cea mai mare problemă era specificul domeniului pescuitului. Denumirile categoriilor nu sunt etichete simple, universale. Acestea se referă adesea la tehnici specifice de pescuit, tipuri de momeli, accesorii, serii de produse sau concepte utilizate doar de pescarii avansați.
La 10 versiuni lingvistice, gestionarea manuală a categoriilor în panoul Magento era prea consumatoare de timp și predispusă la erori. Clientul avea nevoie de control complet asupra:
- denumirilor categoriilor,
- adreselor URL ale categoriilor,
- descrierilor categoriilor,
- metadatelor SEO,
- valorilor specifice fiecărui store view,
- coerenței structurii categoriilor între versiunile lingvistice.
Volumul de lucru a inclus câteva zeci de categorii în 10 versiuni lingvistice. Aceasta a însemnat sute de valori text care trebuiau pregătite, verificate, corectate și importate.
Problemă de business
Activitatea standard în panoul Magento ar fi necesitat editarea fiecărei categorii separat pentru fiecare store view. La câteva zeci de categorii și 10 limbi, un astfel de proces ar fi fost lent și greu de controlat.
Cele mai importante riscuri în cazul lucrului manual:
- greșeli în alegerea store view-ului,
- traduceri incoerente ale denumirilor categoriilor,
- suprascriere accidentală a valorilor implicite,
- adrese URL incorecte sau duplicate,
- lipsa unei imagini de ansamblu convenabile asupra tuturor categoriilor într-un singur loc,
- dificultatea de a transmite datele traducătorilor sau persoanelor responsabile de SEO,
- lipsa unei modalități simple de validare a modificărilor înainte de salvare.
Clientul avea nevoie de un proces care să permită pregătirea datelor în bloc, verificarea lor înainte de import și salvarea în siguranță doar a atributelor selectate pentru un anumit store view.
Soluție
Pentru acest scenariu a fost utilizat modulul Export Import Categories pentru Magento 2.
Modulul a permis exportul categoriilor într-un fișier CSV, pregătirea datelor lingvistice în afara panoului Magento și reimportarea valorilor în store view-ul selectat.
Procesul s-a bazat pe modul update, deoarece structura categoriilor exista deja în magazin. Scopul nu a fost crearea unui nou arbore de categorii, ci completarea și corectarea datelor pentru versiunile lingvistice suplimentare.
Domeniul de utilizare al modulului
În proiect, următoarele funcții ale modulului au fost esențiale:
- exportul categoriilor din store view-ul de bază,
- păstrarea
entity_idca identificator stabil al categoriei, - schimbarea
store_view_codecu codul versiunii lingvistice țintă, - import în modul
update, - selectarea atributelor concrete pentru import,
- gestionarea denumirilor categoriilor,
- gestionarea
url_key, - gestionarea descrierilor categoriilor,
- controlul valorilor goale,
- validarea fișierului înainte de importul propriu-zis,
- raport de import.
Proces implementat în proiect
1. Exportul categoriilor
Mai întâi a fost efectuat exportul categoriilor din store view-ul de bază. Fișierul CSV conținea coloane de sistem și atributele selectate necesare pentru pregătirea versiunilor lingvistice.
Cele mai importante coloane de sistem:
store_view_code,entity_id,category_path,parent_path.
Cele mai importante atribute de lucru:
name,url_key,description,meta_title,meta_description.
2. Pregătirea datelor lingvistice
Pe baza CSV-ului exportat au fost pregătite date separate pentru fiecare versiune lingvistică.
Datorită acestui lucru, persoanele responsabile de conținut puteau lucra în foaia de calcul, văzând simultan mai multe categorii. Acest lucru a fost deosebit de important în domeniul pescuitului, unde denumirile categoriilor trebuie să fie conforme cu terminologia locală și cu modul real în care clienții caută produsele.
3. Păstrarea identificatorilor categoriilor
În fișierele de import s-a păstrat entity_id, pentru ca modulul să poată corela în mod clar rândurile CSV cu categoriile existente în Magento.
Acest lucru a permis importul traducerilor fără riscul de a crea categorii duplicate.
4. Schimbarea store view-ului
Pentru fiecare versiune lingvistică s-a setat în CSV valoarea corespunzătoare store_view_code și s-a selectat același store view în formularul de import.
Modulul a validat coerența acestor date. Datorită acestui lucru, a fost redus riscul de import accidental al traducerilor în vizualizarea greșită a magazinului.
5. Import în modul update
Importul a fost efectuat în modul update, selectând doar acele atribute care urmau să fie modificate pentru versiunea lingvistică respectivă.
Datorită acestui lucru, modulul nu a intervenit în celelalte date ale categoriilor.
6. Validare și dry-run
Înainte de importul propriu-zis, se putea rula validarea fără salvarea datelor.
Modul dry-run a permis verificarea:
- dacă fișierul CSV are coloanele corecte,
- dacă
store_view_codecorespunde store view-ului selectat, - dacă
entity_idindică categorii existente, - dacă atributele selectate există în Magento,
- dacă importul nu conține erori care blochează salvarea.
7. Raport după import
După import, modulul a generat un raport care a permis verificarea statusului fiecărui rând.
Raportul a fost deosebit de util în lucrul cu multe limbi, deoarece a permis detectarea rapidă a eventualelor erori într-un anumit fișier sau într-o anumită categorie.
De ce CSV a fost formatul potrivit
CSV a fost un format practic pentru acest proiect, deoarece:
- poate fi editat ușor într-o foaie de calcul,
- poate fi transmis traducătorilor,
- valorile pot fi comparate între limbi,
- se pot pregăti mai multe versiuni lingvistice pe baza unui singur export,
- se poate lucra pe coloane concrete fără clicuri manuale în panoul Magento,
- se poate păstra controlul asupra
entity_idșistore_view_code.
Efect
Modulul i-a permis clientului să gestioneze categoriile în 10 versiuni lingvistice într-un mod organizat și repetabil.
În locul editării manuale a fiecărei categorii în panoul Magento, echipa a putut lucra pe fișiere CSV, pregăti traducerile în bloc și importa doar atributele selectate pentru un anumit store view.
Cele mai importante beneficii:
- pregătire mai rapidă a noilor versiuni lingvistice,
- control mai mare asupra denumirilor categoriilor,
- control deplin asupra adreselor URL,
- gestionare mai ușoară a descrierilor categoriilor,
- posibilitatea de a lucra în afara panoului Magento,
- risc mai mic de erori la mai multe store view-uri,
- validarea datelor înainte de salvare,
- raportarea rezultatelor importului.
Importanță pentru SEO
În proiect, posibilitatea de a controla url_key, denumirile categoriilor și descrierile a avut o importanță deosebită.
Pentru un magazin care operează în mai multe limbi, traducerea automată sau copierea accidentală a denumirilor categoriilor nu este suficientă. Fiecare piață poate utiliza termeni de specialitate diferiți, iar în pescuit diferențele de terminologie sunt deosebit de importante.
Modulul a permis pregătirea conștientă a valorilor SEO pentru fiecare versiune lingvistică:
- denumiri locale ale categoriilor,
- adrese URL locale,
- descrieri adaptate limbii,
- meta titluri,
- meta descrieri.
Rezumat
Extinderea tandembaits.com cu 10 versiuni lingvistice a necesitat un instrument care să permită gestionarea eficientă a categoriilor Magento 2 la nivel de store view.
Export Import Categories a rezolvat această problemă, mutând munca din editarea manuală în panoul Magento într-un proces controlat bazat pe CSV, validare și importul atributelor selectate.
Ca rezultat, clientul a obținut posibilitatea de a gestiona comod denumiri specializate ale categoriilor, adrese URL și descrieri pentru mai multe limbi fără riscul de a suprascrie accidental întreaga structură a categoriilor.