Skip to main content

Search Results

Quero exibir resultados na página /search?q=…. Como implementar?
Referência: seu tema (adaptado do cookbook) Índice: Cookbooks

Contratos utilizados

  • Data Contract — PageContextMap.search
  • Page Contract — template search
  • Product Contract — ProductSummary nos cards
  • @corvex/theme-sdk — usePage('search')
  • @corvex/runtime — SectionChrome
  • Snippet reutilizado: @corvex/snippets/product-card

API pública de busca

Query string: ?q= ou ?query= (resolvido pela plataforma em resolvePageContext). Rota: /search ou /busca → PageType search.

Fluxo de dados

Não chame storefront.search.query na section se o contexto de página já fornece results — evita dupla requisição.

Section (padrão canônico)

Título com query:

Formulário de busca (GET)

Submit nativo — sem JavaScript obrigatório. Parâmetro canônico: q.

Schema

enabledOn: ['search'] · data: ['search']

Template obrigatório

templates/search.json MUST referenciar esta section (ou equivalente):

Edge cases


Separação com Product Card

  • Search Results — contexto de página, produtos da busca
  • Product Card — product_list manual no inspector (storefront.products.get)
Não misturar resolução: busca usa usePage; grid manual usa defineSectionData.

Checklist

  • usePage('search') — não storefront.search duplicado
  • results?.nodes com fallback []
  • Product Card snippet para UI
  • Template search.json no tema
  • corvex validate .

Veja também