Fix rápido

Produto cadastrado não aparece na loja: 5 pontos para conferir

A ordem importa: quem reindexa antes de conferir os campos passa meia hora esperando para descobrir que o produto estava desligado.

Por Roger Takemiya · Publicado em · 4 min de leitura

O produto está lá no grid do admin, salvo, com foto e preço. Na loja, nada. Nem na categoria, nem na busca, e a URL direta dá 404.

O reflexo de todo mundo é rodar reindex e limpar cache. Às vezes funciona. Na maior parte das vezes você espera vinte minutos para nada, porque o problema é um campo do formulário que ninguém marcou. Confira os cinco primeiro — leva um minuto.

Os cinco campos, nesta ordem

  1. Enable Product. É o botão no topo do formulário. Produto importado por planilha sai desligado com uma frequência que assusta.
  2. Visibility. Tem que estar em Catalog, Search. Se estiver em Not Visible Individually, o produto existe mas não tem página própria — é o padrão de item que só serve como filho de configurável. E Search sozinho faz ele aparecer na busca e sumir da categoria, o que confunde muita gente.
  3. Stock Status. Precisa estar In Stock e com quantidade maior que zero. Só quantidade não basta: o campo de status é separado.
  4. Product in Websites. Fica numa seção retraída, lá embaixo do formulário. Loja com um site só normalmente já vem marcado; loja com dois, não. Produto sem site marcado não aparece em lugar nenhum.
  5. Categories. Sem categoria, o produto só existe na busca e na URL direta.

Se todos os cinco estão certos e o produto continua sumido, aí sim o assunto é índice e cache.

Só depois: reindex e cache

Não precisa reindexar tudo. Os índices que importam para esse sintoma são estes:

php bin/magento indexer:reindex catalog_category_product catalog_product_category catalog_product_price cataloginventory_stock catalogsearch_fulltext
php bin/magento cache:flush

Antes de rodar, olhe o estado deles:

php bin/magento indexer:status

Se aparecer Reindex required em vários e o cron da loja está funcionando, o próprio Magento resolveria sozinho em um minuto. Se ficam inválidos para sempre, o problema real é o cron parado, e reindexar na mão só vai enxugar gelo.

O caso específico do produto configurável

Com produto configurável a conta é outra, e é a fonte número um de confusão em loja de roupa e de calçado.

Os filhos (cada tamanho, cada cor) devem ficar em Not Visible Individually. Está certo assim: ninguém quer uma página de produto para "Camiseta Preta Tamanho M". Quem precisa estar visível é o pai.

Só que o pai herda o estoque dos filhos. Se todos os tamanhos estiverem desabilitados ou fora de estoque, o configurável some da vitrine mesmo estando habilitado e com categoria certa. Antes de mexer no produto pai, abra a aba de configurações e confira se pelo menos um filho está habilitado e com quantidade.

Outro detalhe: filho novo adicionado a um configurável que já existia só entra na vitrine depois que os índices de categoria e de estoque rodam.

Se ainda assim não aparece

Três causas menos óbvias, em ordem de frequência.

Escopo de store view. Enable Product e Visibility são atributos por store view. Se você editou o produto com o seletor no topo em "Default Values" e a loja tem uma view brasileira com valor próprio, sua alteração não valeu para o cliente. Troque o seletor para a store view certa e confira lá.

Categoria pai sem Anchor. O produto está numa subcategoria e você está olhando a categoria de cima. Em Display Settings da categoria pai, a opção Anchor precisa estar ligada para ela mostrar os produtos das filhas. O formulário já vem com ela marcada, mas quem migrou de outra plataforma costuma ter categoria com isso desligado.

Salable Quantity zerada. Com múltiplas fontes de estoque, a quantidade do produto pode estar cheia e a quantidade vendável em zero por causa de reserva de pedido antigo. É o caso em que o admin mostra Salable Quantity: 0 ao lado de uma quantidade positiva.

Perguntas rápidas

O produto aparece na busca mas não na categoria. O que é?

Quase sempre Visibility em Search em vez de Catalog, Search. A outra possibilidade é a categoria pai estar sem a opção Anchor ligada, quando o produto está numa subcategoria.

Preciso rodar reindex completo toda vez?

Não. Passe os nomes dos índices que interessam ao comando indexer:reindex. Reindex completo em catálogo grande leva dezenas de minutos e raramente é necessário.

Produto sem estoque some da loja. Isso tem jeito?

Tem. Existe uma configuração de inventário que decide se produto fora de estoque continua visível na vitrine. É uma opção de loja, não do produto, então ela vale para o catálogo inteiro.

Pra conferir na fonte

  1. Create a simple product — Adobe Experience League
  2. Product workspace — Adobe Experience League
  3. Manage the indexers — Adobe Experience League

catálogo produto reindex

Precisa de um orçamento? Ficarei feliz em ajudar. Clique Aqui