Módulo Export Import Categories para Magento 2

71,52 € 58,15 €
Instalacja COMPOSER
M2-EXPORT-IMPORT-CATEGORIES
PayPal PayPal
Przelew Przelew

Kowal_ExportImportCategories é um módulo Magento 2 que permite exportar e importar atributos de categorias em formato CSV, tendo em conta o store view selecionado. A extensão foi preparada para lojas que trabalham com várias versões linguísticas, várias vistas de loja ou que precisam de atualizar dados de categorias em massa sem editar manualmente cada categoria no painel de administração.

O módulo permite exportar categorias para um ficheiro CSV, modificar atributos selecionados fora do Magento e, em seguida, importar novamente os dados no modo de atualização de categorias existentes ou de criação de novas categorias. A importação funciona no store view indicado, permitindo preparar facilmente traduções de nomes, descrições, meta tags, URLs e outros atributos de categorias.

A quem se destina este módulo

O módulo destina-se a:

  • lojas Magento 2 com várias versões linguísticas,
  • equipas de conteúdo que trabalham com folhas CSV,
  • agências que implementam catálogos de categorias entre ambientes,
  • administradores que precisam de atualizar em massa nomes, descrições, metadados e URLs de categorias,
  • lojas que têm atributos de categorias personalizados e querem geri-los em lote,
  • projetos em que os dados das categorias são preparados fora do Magento, por exemplo, por tradutores, departamento de SEO ou sistema PIM.

Principais funcionalidades

  • Exportação de categorias para CSV para o store view selecionado.
  • Importação de categorias a partir de CSV para o store view selecionado.
  • Modo de atualização de categorias existentes: update.
  • Modo de criação de novas categorias: insert.
  • Seleção dos atributos exportados para CSV.
  • Seleção dos atributos importados a partir de CSV.
  • Colunas de sistema automáticas necessárias para identificar categorias.
  • Validação dos cabeçalhos CSV antes da importação.
  • Validação dos nomes das colunas em relação aos atributos reais de categorias do Magento.
  • Suporte para atributos de categorias personalizados adicionados no Magento.
  • Suporte para valores de texto em todos os atributos.
  • Suporte para atributos select e multiselect através dos labels das opções.
  • Possibilidade de trabalhar com valores visíveis no store view ou apenas com substituições do store view.
  • Modo dry-run, ou seja, validação completa da importação sem gravação de dados.
  • Política de valores vazios.
  • Estratégias de gestão de url_key.
  • Criação opcional de permanent redirect ao alterar o URL da categoria.
  • Suporte para caminhos de imagens de categorias.
  • Batch processing para ficheiros maiores.
  • Políticas de tratamento de erros.
  • Relatório de importação em CSV.
  • Histórico de importações no painel de administração.

Exportação de categorias

A exportação permite gerar um ficheiro CSV com categorias para o store view selecionado. O administrador escolhe a vista de loja e os atributos de categorias que devem constar no ficheiro. O módulo adiciona automaticamente as colunas de sistema necessárias para identificar as categorias e manter a estrutura da árvore.

A exportação pode ser utilizada para:

  • preparar traduções de categorias,
  • auditar dados de categorias,
  • corrigir metadados SEO em massa,
  • comparar valores entre store views,
  • preparar um ficheiro para importação no mesmo ambiente ou noutro,
  • arquivar os dados atuais das categorias antes de alterações.

Âmbito da exportação

A exportação inclui atributos de categorias. O módulo não exporta produtos atribuídos às categorias. Também não executa operações de eliminação de categorias.

O administrador pode selecionar:

  • Store View,
  • categoria inicial,
  • atributos para exportação,
  • separador CSV,
  • modo de valores de store view.

Modos de valores de store view na exportação

O módulo suporta dois modos de exportação de valores:

  • resolved_value - é exportado o valor visível no store view em questão, ou seja, após considerar o fallback do Magento para o valor predefinido.
  • store_override_only - é exportado apenas o valor substituído diretamente para o store view em questão; se o valor for herdado, a célula CSV permanece vazia.

O modo resolved_value é conveniente para trabalho editorial, porque mostra o valor real visível na loja. O modo store_override_only é útil quando é necessário controlar apenas traduções ou substituições específicas de uma determinada vista de loja.

Importação de categorias

A importação permite carregar um ficheiro CSV e guardar atributos de categorias selecionados para o store view indicado. O store view selecionado no formulário de importação é prioritário, e a coluna store_view_code do CSV é utilizada para validar se o ficheiro está de acordo com a vista de loja selecionada.

A importação pode ser utilizada para:

  • traduzir categorias,
  • atualizar nomes de categorias,
  • atualizar descrições de categorias,
  • atualizar meta tags,
  • atualizar url_key,
  • criar novas categorias,
  • importar atributos de categorias personalizados,
  • atualizar atributos de menu e visibilidade,
  • importar caminhos de imagens de categorias.

Modo update

O modo update atualiza categorias existentes. O módulo não cria novas categorias neste modo.

A categoria é pesquisada sobretudo por entity_id. Se entity_id não estiver disponível, o módulo pode usar category_path, desde que o caminho identifique inequivocamente uma única categoria.

O modo update é recomendado para:

  • traduções de categorias entre store views,
  • correções SEO,
  • atualização de descrições,
  • atualização de nomes,
  • alteração de valores de atributos de categorias personalizados.

Exemplo de cenário de tradução:

  1. Exportação de categorias do store view de base.
  2. Alteração de store_view_code no CSV para o código do store view de destino.
  3. Manutenção dos mesmos entity_id.
  4. Preenchimento das traduções nas colunas name, description, meta_title, meta_description.
  5. Importação em modo update para o store view de destino.

Neste cenário, o módulo guarda os atributos selecionados no contexto do store_id numérico escolhido no formulário de importação.

Modo insert

O modo insert cria novas categorias. Neste modo, entity_id não é necessário, porque o Magento atribui-o automaticamente.

A nova categoria deve ter o elemento pai indicado por:

  • parent_entity_id,
  • ou parent_path.

O modo insert é recomendado para:

  • criar novas estruturas de categorias,
  • transferir a árvore de categorias entre ambientes,
  • preparar categorias numa folha CSV,
  • criar categorias com base em dados externos.

Se a importação incluir tanto o elemento pai como o filho, os dados devem estar ordenados da categoria de nível superior para a categoria de nível inferior.

Formato CSV

A primeira linha do ficheiro CSV deve conter os cabeçalhos das colunas. As colunas dividem-se em:

  • colunas de sistema,
  • colunas de atributos de categorias.

As colunas de atributos devem corresponder aos códigos de atributos do Magento, por exemplo:

  • name,
  • url_key,
  • description,
  • meta_title,
  • meta_description,
  • is_active,
  • include_in_menu.

Colunas de sistema

O módulo utiliza as seguintes colunas de sistema:

  • store_view_code,
  • entity_id,
  • parent_entity_id,
  • category_path,
  • parent_path,
  • level,
  • position,
  • attribute_set_id.

As colunas de sistema não são tratadas como atributos EAV. Servem para identificar categorias, validar o store view e reconstruir a estrutura da árvore.

Exemplo de CSV para atualização

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 fitness

Exemplo de CSV para criação de categorias

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,1

Trabalho com atributos de texto

O módulo guarda valores no CSV como texto. Assim, o ficheiro pode ser editado numa folha de cálculo, enviado a um tradutor ou preparado automaticamente num sistema externo.

Para atributos do tipo select e multiselect, o módulo trabalha com os labels das opções, e não com os IDs técnicos das opções. Isto significa que no CSV são visíveis valores legíveis, como Products only, Position ou Price.

Para multiselect, vários valores são separados pelo separador |.

Exemplo:

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,Position

Se o label da opção não existir ou não for inequívoco, a importação comunicará um erro de validação.

Política de valores vazios

Durante a importação, o administrador escolhe a forma de interpretar células CSV vazias:

  • skip_empty - uma célula vazia não altera o valor existente.
  • clear_value - uma célula vazia limpa o valor do atributo para o store view selecionado.
  • use_default - uma célula vazia remove a substituição do store view e permite que o Magento utilize o valor predefinido.

Por predefinição, a opção recomendada para atualizações é skip_empty, porque reduz o risco de limpeza acidental de dados.

Gestão de URL de categorias

O módulo permite configurar a estratégia de gestão de url_key:

  • use_csv_value - utiliza o valor do CSV.
  • generate_from_name - gera url_key com base no atributo name.
  • keep_existing - no modo update, mantém o url_key atual.
  • magento_default - deixa a gestão do URL ao mecanismo padrão do Magento.

O administrador também pode decidir se devem ser criados permanent redirects quando url_key é alterado.

Esta configuração é particularmente importante nas traduções, porque diferentes lojas podem utilizar estratégias diferentes:

  • URLs traduzidos para cada idioma,
  • URLs comuns entre versões linguísticas,
  • URLs gerados automaticamente a partir dos nomes das categorias,
  • URLs SEO geridos manualmente.

Imagens de categorias

O módulo pode importar atributos de imagens de categorias se as colunas adequadas forem selecionadas para importação.

Diretório de origem predefinido:

pub/media/import/categories

No CSV é indicado um caminho de texto relativo a este diretório, por exemplo:

gear/bags.jpg

O módulo valida a existência do ficheiro e a extensão. São suportados formatos gráficos seguros, como:

  • jpg,
  • jpeg,
  • png,
  • webp,
  • gif.

Modo dry-run

O modo dry-run permite executar a validação da importação sem guardar dados no Magento.

Neste modo, o módulo:

  • lê o CSV,
  • valida os cabeçalhos,
  • valida o store view,
  • verifica a existência de categorias ou elementos pai,
  • verifica os atributos,
  • mapeia valores select e multiselect,
  • verifica imagens,
  • gera um relatório de erros e avisos,
  • não guarda categorias.

Este é o primeiro passo recomendado antes de qualquer importação maior.

Batch processing

A importação funciona por lotes. O tamanho do batch pode ser configurado no formulário de importação.

Valor predefinido:

100 wierszy

O batch processing reduz o risco de timeouts e de consumo excessivo de memória em ficheiros maiores.

Política de erros

O módulo suporta três variantes de comportamento em caso de erros:

  • skip_invalid_rows - as linhas incorretas são ignoradas e as corretas continuam a ser importadas.
  • stop_on_first_error - a importação é interrompida após o primeiro erro.
  • all_or_nothing - se qualquer linha tiver um erro, os dados não são gravados.

A opção recomendada para grandes importações é skip_invalid_rows, porque permite processar os dados corretos e obter um relatório de problemas para as restantes linhas.

Relatórios e histórico de importações

Após a importação, o módulo gera um relatório CSV com:

  • número da linha,
  • identificador da categoria,
  • estado,
  • mensagem,
  • lista de atributos alterados.

O histórico de importações está disponível no painel de administração. O administrador pode verificar:

  • data da importação,
  • utilizador administrador,
  • store view,
  • modo de importação,
  • nome do ficheiro,
  • número de linhas,
  • número de sucessos,
  • número de erros,
  • informação sobre se a importação foi executada como dry-run,
  • descarregar o relatório de importação.

Segurança

O módulo utiliza o ACL do Magento e adiciona permissões separadas para exportação, importação e histórico de importações.

A importação é protegida por:

  • validação de cabeçalhos,
  • validação de códigos de atributos,
  • validação de store view,
  • validação de colunas obrigatórias,
  • validação de tipos de valores,
  • validação de labels de opções,
  • validação de ficheiros de imagens,
  • relatório de erros por linha.

O módulo não elimina categorias nem importa produtos atribuídos a categorias.

Utilizações típicas

Traduções de categorias

Exporta as categorias do store view de base, preenche as traduções no CSV, altera store_view_code para o código do store view de destino e importa os dados no modo update.

Atualização SEO em massa

Exporta os atributos meta_title, meta_description, url_key, edita-os no CSV e importa apenas as colunas selecionadas.

Criação de uma nova estrutura de categorias

Prepara um ficheiro CSV com category_path, parent_path, name e outros atributos obrigatórios e, em seguida, importa-o no modo insert.

Atualização de atributos de categorias personalizados

Se a loja tiver atributos de categorias personalizados, o módulo obtém-nos dinamicamente a partir do EAV e permite selecioná-los na exportação e na importação.

Localização no painel Magento

Após a instalação, o módulo está disponível em:

System > Data Transfer > Export/Import Categories

Vistas disponíveis:

  • Export Categories,
  • Import Categories,
  • Import History.

Instruções de instalação e configuração do módulo Kowal_ExportImportCategories

Este documento descreve a instalação, a configuração e a utilização do módulo Kowal_ExportImportCategories para Magento 2. As instruções têm em conta as informações do ficheiro README.md e as funcionalidades implementadas no módulo.

Requisitos

  • Magento 2.
  • PHP compatível com a instalação Magento, recomendado PHP 8.1 ou mais recente.
  • Acesso ao CLI do Magento.
  • Acesso ao Composer.
  • Permissões de administrador Magento.
  • Acesso ao repositório do módulo.
  • Para importação de imagens: possibilidade de colocar ficheiros no diretório pub/media/import/categories.

Instalação através do Composer

O módulo está disponível através de um repositório Composer.

1. Adicione o repositório Composer

composer config repositories.export.import.categories vcs https://github.com/kowalco/export-import-categories

2. Adicione o token de acesso ao repositório privado GitHub

Se o repositório for privado, configure o token GitHub:

composer config --global --auth github-oauth.github.com 

Substitua pelo seu próprio token de acesso.

3. Instale o módulo

composer require kowal/module-export-import-categories

4. Ative o módulo no Magento

bin/magento module:enable Kowal_ExportImportCategories

5. Execute a atualização do Magento

bin/magento setup:upgrade

6. Limpe a cache

bin/magento cache:flush

7. Opcionalmente, execute a compilação DI

Em ambientes de produção ou no modo production:

bin/magento setup:di:compile

8. Opcionalmente, implemente os recursos estáticos

Se o ambiente o exigir:

bin/magento setup:static-content:deploybin/magento cache:flush

Instalação manual em app/code

Em alternativa, o módulo pode ser colocado manualmente no diretório:

app/code/Kowal/ExportImportCategories

Depois de copiar os ficheiros, execute:

bin/magento module:enable Kowal_ExportImportCategoriesbin/magento setup:upgradebin/magento cache:flush

No modo production, execute também:

bin/magento setup:di:compile

Verificação da instalação

Após a instalação, verifique se o módulo está ativo:

bin/magento module:status Kowal_ExportImportCategories

O módulo deve constar na lista de módulos ativos.

No painel de administração, aceda a:

System > Data Transfer > Export/Import Categories

Devem estar visíveis três opções:

  • Export Categories,
  • Import Categories,
  • Import History.

Permissões ACL

O módulo adiciona permissões administrativas separadas:

  • acesso à secção principal Export/Import Categories,
  • exportação de categorias,
  • importação de categorias,
  • histórico de importações.

Se o utilizador administrador não vir o menu do módulo, verifique a função do utilizador em:

System > Permissions > User Roles

Em seguida, atribua as permissões adequadas para os recursos do módulo.

Localização do módulo no painel

O módulo está disponível em:

System > Data Transfer > Export/Import Categories

Vistas:

  • Export Categories - exportação de categorias para CSV.
  • Import Categories - importação de categorias a partir de CSV.
  • Import History - histórico de importações e relatórios.

Configuração da exportação

A vista de exportação permite gerar um ficheiro CSV com categorias.

Campos de exportação

Store View

Seleciona o store view a partir do qual serão lidos os valores dos atributos das categorias.

Se selecionar um store view linguístico, a exportação pode conter valores específicos desse store view ou valores herdados do scope predefinido, consoante o modo de valores.

Start Category ID

Campo opcional que permite limitar a exportação à categoria selecionada e à sua subárvore.

Se o campo ficar vazio, o módulo exporta as categorias a partir da root category do store view selecionado.

Store View Value Mode

Define como exportar valores dependentes do store view.

Opções disponíveis:

  • resolved_value,
  • store_override_only.

resolved_value exporta o valor visível no store view selecionado, após considerar o fallback do Magento.

store_override_only exporta apenas o valor substituído para o store view selecionado. Se o valor for herdado do default scope, a célula CSV ficará vazia.

CSV Delimiter

Separador CSV. Por predefinição:

,

Pode ser utilizado outro separador se o ficheiro for editado numa ferramenta que exija, por exemplo, ponto e vírgula.

Attributes

Lista de atributos de categorias disponíveis no Magento.

O módulo obtém os atributos dinamicamente a partir do EAV, por isso a lista também pode incluir atributos de categorias personalizados adicionados no projeto.

As colunas de sistema são adicionadas automaticamente e não precisam de ser selecionadas.

Colunas de sistema na exportação

A exportação deve incluir sempre as colunas de sistema:

  • store_view_code,
  • entity_id,
  • parent_entity_id,
  • category_path,
  • parent_path,
  • level,
  • position,
  • attribute_set_id.

Estas colunas servem para identificar categorias, validar o store view e gerir a estrutura da árvore.

Configuração da importação

A vista de importação permite carregar um CSV e guardar dados de categorias.

Campos de importação

Store View

Seleciona o store view no qual os valores serão guardados.

Este campo determina o store_id numérico utilizado na gravação nas tabelas Magento.

A coluna store_view_code do CSV não é convertida diretamente em store_id. É utilizada para validar se o ficheiro corresponde ao store view selecionado.

Exemplo:

  • no formulário seleciona um store view com store_id = 1,
  • no CSV deve existir store_view_code correspondente a esse store view,
  • o módulo guarda os dados utilizando store_id = 1.

Import Mode

Modos disponíveis:

  • update,
  • insert.

update atualiza categorias existentes.

insert cria novas categorias.

CSV File

Ficheiro CSV com cabeçalhos na primeira linha.

O ficheiro deve estar codificado em UTF-8.

CSV Delimiter

Separador CSV. Deve corresponder ao separador utilizado no ficheiro.

Unknown Columns Policy

Define o comportamento para colunas que não são colunas de sistema nem atributos de categorias conhecidos.

Opções disponíveis:

  • error - a importação comunica um erro para colunas desconhecidas.
  • ignore - as colunas desconhecidas são ignoradas.

Opção recomendada:

error

Empty Values Policy

Define como o módulo interpreta células CSV vazias.

Opções disponíveis:

  • skip_empty,
  • clear_value,
  • use_default.

skip_empty significa que uma célula vazia não altera o valor atual.

clear_value significa que uma célula vazia limpa o valor do atributo.

use_default significa que uma célula vazia remove a substituição do store view e permite que o Magento utilize o valor predefinido.

Opção recomendada para importação de atualização:

skip_empty

URL Key Strategy

Define a forma de gerir o atributo url_key.

Opções disponíveis:

  • use_csv_value,
  • generate_from_name,
  • keep_existing,
  • magento_default.

use_csv_value guarda url_key a partir do CSV.

generate_from_name gera url_key com base no valor name.

keep_existing mantém o url_key existente no modo update.

magento_default deixa a gestão do URL ao mecanismo padrão do Magento.

Create permanent redirect for URL key changes

A opção define se o Magento deve criar um permanent redirect ao alterar url_key.

Vale a pena ativá-la quando a alteração do URL da categoria deve manter os redirecionamentos SEO a partir dos endereços antigos.

Images Base Directory

Diretório base para importação de imagens de categorias relativo a pub/media.

Por predefinição:

import/categories

Caminho completo no Magento:

pub/media/import/categories

Se no CSV indicar:

gear/bags.jpg

o módulo procurará o ficheiro:

pub/media/import/categories/gear/bags.jpg

Error Policy

Define o comportamento da importação em caso de erros.

Opções disponíveis:

  • skip_invalid_rows,
  • stop_on_first_error,
  • all_or_nothing.

skip_invalid_rows ignora linhas incorretas e continua a importação.

stop_on_first_error interrompe a importação após o primeiro erro.

all_or_nothing exige que todo o ficheiro esteja correto; se ocorrer um erro, a importação não deve guardar dados.

Opção recomendada para ficheiros grandes:

skip_invalid_rows

Batch Size

Número de linhas processadas num único lote.

Por predefinição:

100

Um valor mais baixo reduz o consumo de memória. Um valor mais alto pode acelerar a importação em ambientes mais potentes.

Attributes to Import

Lista de atributos que devem ser importados.

A importação atualiza apenas os atributos selecionados. Se a coluna existir no CSV, mas o atributo não estiver selecionado no formulário, o módulo não deve guardá-lo.

Dry Run

Modo de validação sem gravação de dados.

Recomenda-se executar dry-run antes da importação efetiva, especialmente para ficheiros grandes ou alterações SEO.

Modo import/update

O modo update serve para atualizar categorias existentes.

Dados obrigatórios

O CSV deve conter:

  • store_view_code,
  • entity_id ou category_path,
  • pelo menos uma coluna de atributo selecionado.

Como funciona a identificação de categorias

O módulo tenta encontrar a categoria por:

  1. entity_id,
  2. category_path, se entity_id estiver vazio.

entity_id é o melhor identificador quando a importação ocorre no mesmo ambiente Magento.

category_path é mais portátil entre ambientes, mas deve ser inequívoco.

Exemplo de atualização de traduções

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 sportowe

Configurações de importação:

  • Store View: store view polaco,
  • Import Mode: update,
  • Attributes to Import: name, url_key, meta_title, meta_description,
  • URL Key Strategy: use_csv_value,
  • Empty Values Policy: skip_empty,
  • primeiro Dry Run, depois a importação efetiva.

Modo import/insert

O modo insert serve para criar novas categorias.

Dados obrigatórios

O CSV deve conter:

  • store_view_code,
  • category_path,
  • parent_entity_id ou parent_path,
  • name,
  • pelo menos uma coluna de atributo selecionado.

entity_id não é necessário, porque o Magento o atribui automaticamente.

Exemplo de criação de categorias

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,1

Configurações de importação:

  • Store View: default store view,
  • Import Mode: insert,
  • Attributes to Import: name, url_key, is_active, include_in_menu,
  • URL Key Strategy: use_csv_value ou generate_from_name,
  • Error Policy: skip_invalid_rows,
  • primeiro Dry Run.

Trabalho com select e multiselect

O módulo suporta select e multiselect através dos labels das opções.

Não é necessário indicar os IDs técnicos das opções.

Exemplo:

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,Position

Para multiselect, vários valores são separados pelo separador:

|

Se o label não existir ou for ambíguo, a importação comunicará um erro.

Importação de imagens de categorias

Antes de importar imagens, coloque os ficheiros no diretório:

pub/media/import/categories

Exemplo de CSV:

store_view_code,entity_id,category_path,image,thumbnaildefault,13,Default Category/Gear/Bags,gear/bags.jpg,gear/bags-thumb.jpg

Configurações de importação:

  • Images Base Directory: import/categories,
  • atributos selecionados: image, thumbnail.

O módulo verificará se os ficheiros existem e têm extensões suportadas.

Relatório de importação

Após a importação, o módulo gera um relatório CSV.

O relatório contém:

  • número da linha,
  • identificador da categoria,
  • estado,
  • mensagem,
  • atributos alterados.

Os estados podem incluir:

  • success,
  • error,
  • skipped_no_change,
  • skipped_existing.

Histórico de importações

O histórico de importações está disponível em:

System > Data Transfer > Export/Import Categories > Import History

O histórico contém:

  • data da importação,
  • utilizador administrador,
  • store view,
  • modo de importação,
  • nome do ficheiro,
  • número de linhas,
  • número de sucessos,
  • número de erros,
  • informação sobre dry-run,
  • link para descarregar o relatório.

Processo de trabalho recomendado

Importação de atualização segura

  1. Exporte as categorias atuais.
  2. Guarde o ficheiro original como backup.
  3. Prepare as alterações numa cópia do CSV.
  4. Certifique-se de que store_view_code corresponde ao store view de destino.
  5. Selecione a importação update.
  6. Selecione apenas os atributos que pretende alterar.
  7. Defina Empty Values Policy como skip_empty.
  8. Execute Dry Run.
  9. Verifique o relatório.
  10. Execute a importação efetiva.
  11. Limpe a cache se as alterações não ficarem imediatamente visíveis.

Importação segura de novas categorias

  1. Prepare um CSV com category_path, parent_path ou parent_entity_id.
  2. Certifique-se de que os elementos pai existem ou aparecem antes no ficheiro.
  3. Selecione a importação insert.
  4. Marque pelo menos name e outros atributos obrigatórios.
  5. Execute Dry Run.
  6. Corrija os erros do relatório.
  7. Execute a importação efetiva.

Cache e índices

Após importar alterações em categorias, é recomendável atualizar a cache do Magento:

bin/magento cache:clean

Se a loja exigir reindexação manual após alterações maiores no catálogo:

bin/magento indexer:reindex

Em instalações Magento típicas, a gravação de categorias através dos mecanismos padrão do Magento deve acionar os processos adequados associados ao modelo de categoria, mas após grandes importações recomenda-se verificar a cache e os índices.

Problemas mais frequentes

A importação comunica store_view_code incompatível

Verifique se o código na coluna store_view_code corresponde ao store view selecionado no formulário de importação.

A importação não altera os valores

Verifique:

  • se o atributo foi selecionado em Attributes to Import,
  • se a célula CSV não está vazia,
  • se Empty Values Policy não está definido como skip_empty,
  • se a importação não foi executada como Dry Run.

Select ou multiselect comunica um erro

Verifique se o label da opção no CSV corresponde exatamente ao label da opção no Magento para o store view selecionado.

A imagem não é importada

Verifique:

  • se o ficheiro existe em pub/media/import/categories,
  • se o caminho no CSV está correto,
  • se a extensão do ficheiro é suportada,
  • se o atributo da imagem foi selecionado para importação.

Insert comunica falta de elemento pai

Verifique parent_entity_id ou parent_path. O elemento pai deve existir no Magento ou encontrar-se antes no ficheiro de importação.

Desinstalação do módulo

Se o módulo tiver sido instalado através do Composer:

composer remove kowal/module-export-import-categoriesbin/magento setup:upgradebin/magento cache:flush

Antes de desinstalar, certifique-se de que o histórico de importações pode ser eliminado. O módulo cria a tabela:

kowal_export_import_categories_history
Implemented in real Magento 2 stores
Case study: expansão da tandembaits.com com novas versões linguísticas

Cliente

tandembaits.com é uma loja online que atua no setor da pesca. A oferta da loja assenta num sortido especializado, no qual nomes corretos de categorias, descrições precisas e URLs bem preparados têm impacto direto na usabilidade da loja, em SEO e na comunicação com clientes em diferentes países.

Desafio

No âmbito da expansão da loja com novas versões linguísticas, o cliente precisava de uma forma eficaz de gerir categorias no Magento 2.

O maior problema era a especificidade do setor da pesca. Os nomes das categorias não são etiquetas simples e universais. Muitas vezes referem-se a técnicas de pesca específicas, tipos de iscos, acessórios, séries de produtos ou conceitos utilizados apenas por pescadores experientes.

Com 10 versões linguísticas, a gestão manual de categorias no painel Magento era demasiado demorada e suscetível a erros. O cliente precisava de ter controlo total sobre:

  • nomes das categorias,
  • URLs das categorias,
  • descrições das categorias,
  • metadados de SEO,
  • valores específicos para cada store view,
  • consistência da estrutura de categorias entre as versões linguísticas.

A escala do trabalho abrangia várias dezenas de categorias em 10 versões linguísticas. Isto significava centenas de valores de texto a preparar, verificar, corrigir e importar.

Problema de negócio

O trabalho padrão no painel Magento exigiria a edição de cada categoria separadamente para cada store view. Com várias dezenas de categorias e 10 idiomas, esse processo seria lento e difícil de controlar.

Os principais riscos do trabalho manual:

  • erros na seleção do store view,
  • traduções inconsistentes dos nomes das categorias,
  • sobrescrita acidental de valores predefinidos,
  • URLs incorretos ou duplicados,
  • falta de uma visão geral prática de todas as categorias num só local,
  • dificuldade em fornecer dados a tradutores ou a pessoas responsáveis por SEO,
  • falta de uma forma simples de validar alterações antes da gravação.

O cliente precisava de um processo que permitisse preparar dados em lote, verificá-los antes da importação e guardar em segurança apenas os atributos selecionados para um store view específico.

Solução

Para este cenário, foi utilizado o módulo Export Import Categories para Magento 2.

O módulo permitiu exportar categorias para um ficheiro CSV, preparar dados linguísticos fora do painel Magento e voltar a importar valores para o store view selecionado.

O processo baseou-se no modo update, uma vez que a estrutura de categorias já existia na loja. O objetivo não era criar uma nova árvore de categorias, mas completar e corrigir dados para as versões linguísticas seguintes.

Âmbito de utilização do módulo

No projeto, as seguintes funcionalidades do módulo foram essenciais:

  • exportação de categorias a partir do store view base,
  • manutenção de entity_id como identificador estável da categoria,
  • alteração de store_view_code para o código da versão linguística de destino,
  • importação em modo update,
  • seleção de atributos específicos para importação,
  • gestão de nomes de categorias,
  • gestão de url_key,
  • gestão de descrições de categorias,
  • controlo de valores vazios,
  • validação do ficheiro antes da importação efetiva,
  • relatório de importação.

Processo implementado no projeto

1. Exportação de categorias

Primeiro, foi realizada a exportação de categorias a partir do store view base. O ficheiro CSV continha colunas de sistema e atributos selecionados necessários para preparar as versões linguísticas.

As colunas de sistema mais importantes:

  • store_view_code,
  • entity_id,
  • category_path,
  • parent_path.

Os principais atributos de trabalho:

  • name,
  • url_key,
  • description,
  • meta_title,
  • meta_description.

2. Preparação dos dados linguísticos

Com base no CSV exportado, foram preparados dados separados para cada versão linguística.

Desta forma, as pessoas responsáveis pelos conteúdos puderam trabalhar numa folha de cálculo, vendo várias categorias em simultâneo. Isto foi especialmente importante no setor da pesca, onde os nomes das categorias têm de estar alinhados com a terminologia local e com a forma real como os clientes pesquisam produtos.

3. Manutenção dos identificadores das categorias

Nos ficheiros de importação, foi mantido o entity_id, para que o módulo pudesse associar inequivocamente as linhas do CSV às categorias Magento existentes.

Isto permitiu importar traduções sem o risco de criar categorias duplicadas.

4. Alteração do store view

Para cada versão linguística, era definido o store_view_code adequado no CSV e era selecionado o mesmo store view no formulário de importação.

O módulo validava a conformidade destes dados. Desta forma, foi reduzido o risco de importar acidentalmente traduções para a vista de loja errada.

5. Importação em modo update

A importação era realizada em modo update, selecionando apenas os atributos que deveriam ser alterados para a versão linguística em causa.

Desta forma, o módulo não interferia com os restantes dados da categoria.

6. Validação e dry-run

Antes da importação efetiva, era possível executar a validação sem gravar dados.

O modo dry-run permitia verificar:

  • se o ficheiro CSV tinha as colunas corretas,
  • se store_view_code correspondia ao store view selecionado,
  • se entity_id indicava categorias existentes,
  • se os atributos selecionados existiam no Magento,
  • se a importação não continha erros que impedissem a gravação.

7. Relatório após a importação

Após a importação, o módulo gerava um relatório que permitia verificar o estado de cada linha.

O relatório era especialmente útil no trabalho com vários idiomas, pois permitia detetar rapidamente eventuais erros num ficheiro específico ou numa categoria específica.

Porque o CSV era o formato adequado

O CSV era um formato prático para este projeto, porque:

  • pode ser facilmente editado numa folha de cálculo,
  • pode ser enviado a tradutores,
  • permite comparar valores entre idiomas,
  • permite preparar várias versões linguísticas com base numa única exportação,
  • permite trabalhar em colunas específicas sem clicar manualmente no painel Magento,
  • permite manter o controlo sobre entity_id e store_view_code.

Resultado

O módulo permitiu ao cliente gerir categorias em 10 versões linguísticas de forma organizada e repetível.

Em vez de editar manualmente cada categoria no painel Magento, a equipa pôde trabalhar em ficheiros CSV, preparar traduções em lote e importar apenas os atributos selecionados para um store view específico.

Principais benefícios:

  • preparação mais rápida de novas versões linguísticas,
  • maior controlo sobre os nomes das categorias,
  • controlo total sobre os URLs,
  • gestão mais fácil das descrições das categorias,
  • possibilidade de trabalhar fora do painel Magento,
  • menor risco de erros com vários store view,
  • validação de dados antes da gravação,
  • relatórios dos resultados da importação.

Importância para SEO

No projeto, a possibilidade de controlar url_key, os nomes das categorias e as descrições foi particularmente importante.

Para uma loja que opera em vários idiomas, a tradução automática ou a cópia acidental de nomes de categorias não é suficiente. Cada mercado pode utilizar termos setoriais diferentes, e na pesca as diferenças terminológicas são especialmente relevantes.

O módulo permitiu preparar valores de SEO de forma consciente para cada versão linguística:

  • nomes de categorias locais,
  • URLs locais,
  • descrições adaptadas ao idioma,
  • meta títulos,
  • meta descrições.

Resumo

A expansão de tandembaits.com com 10 versões linguísticas exigia uma ferramenta que permitisse gerir categorias Magento 2 ao nível do store view de forma eficiente.

Export Import Categories resolveu este problema, transferindo o trabalho da edição manual no painel Magento para um processo controlado baseado em CSV, validação e importação de atributos selecionados.

Como resultado, o cliente passou a poder gerir de forma prática nomes de categorias especializados, URLs e descrições para vários idiomas, sem o risco de sobrescrever acidentalmente toda a estrutura de categorias.

Write Your Own Review
You're reviewing:Módulo Export Import Categories para Magento 2
Produtos
Aktualizacja preferencji plików cookie