Pular para o conteúdo

Troubleshooting

Confira nesta ordem:

  1. O tipo está correto?
  2. O nome interno usa snake_case?
  3. O schema contém title, description, component_config.settings e component_config.content?
  4. Cada tipo de arquivo usado possui exatamente um principal?
  5. Há arquivos do mesmo tipo com o mesmo nome?
  6. Todo partial ou @import-partial aponta para um auxiliar existente?
  7. O JavaScript principal segue o contrato do tipo?
SituaçãoCorreção
JSON inválidoRevise vírgulas, aspas e chaves.
Campo não apareceMova-o para settings, content, settings_mobile ou content_mobile.
Lista sem controles de itensUse items: [{ ... }].
Lista em settingsMova-a para content, content_mobile ou preferences.items.
content_limit sem listaAdicione content.items ou remova o limite.
Conteúdo mobile sem fallbackFaça fallback para o conteúdo desktop no Liquid quando necessário.

Veja Schema.

SituaçãoCorreção
Falta arquivo principalAdicione um principal para cada tipo de arquivo ativo.
Mais de um principalMantenha apenas um principal por tipo.
Nome auxiliar inválidoUse snake_case, sem extensão.
Referência inexistenteCrie o auxiliar ou corrija o nome na referência.
Auxiliar chama principalFaça o principal chamar auxiliares, nunca o contrário.
Referência circularReorganize as chamadas para remover o ciclo.
Token inválidoUse {% partial 'nome' %} ou @import-partial 'nome';.
  • Em top_bar, o principal exporta uma função: export default function setTopBar() {}.
  • Nos outros tipos com JavaScript, exporte um objeto com init().
  • Um auxiliar JavaScript chamado por @import-partial também exporta um objeto com init().

Salvar apenas disponibiliza o componente. Selecione-o pelo título na área correta, configure-o e publique a loja. Para globais, ative-o em Componentes globais.

O retorno 409 indica que o componente ainda está selecionado ou em uma edição pendente. Remova todas as referências antes de excluí-lo. Depois da exclusão ele deixa o catálogo; não há recuperação automática para uma configuração antiga ou inválida.

Identifique o nome do componente informado na falha. Reative-o se ele deve continuar na loja; caso contrário, remova-o da seleção e das edições pendentes. Só então salve e publique novamente.

SituaçãoCorreção
A vitrine não exibe produtosConfira se a tag está preenchida e se há produtos associados a ela. Carregue a lista com {% load_products tag: ... %} antes do loop.
A lista products está vazia ou não existeUse products somente depois de {% load_products %} e mantenha o loop no mesmo cenário da tag carregada.
O card não segue o Product Block selecionadoPasse component_configs: product_block_config ao renderizar partials/components/product_block.
A seção usa product_block_config como produtoUse um item product do loop. product_block_config contém somente opções do card.
Abas diferentes mostram a mesma coleçãoRevise títulos e tags sugeridas. Títulos dinâmicos iguais geram a mesma sugestão de tag.

Veja o exemplo completo em Vitrines de produtos.

Leia novamente o guia do tipo se o problema envolver header, footer, product block, botões ou ícones. Esses tipos não aceitam implementações parciais.