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 —
ProductSummarynos 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
storefront.search.query na section se o contexto de página já fornece results — evita dupla requisição.
Section (padrão canônico)
Formulário de busca (GET)
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_listmanual no inspector (storefront.products.get)
usePage; grid manual usa defineSectionData.
Checklist
-
usePage('search')— nãostorefront.searchduplicado -
results?.nodescom fallback[] - Product Card snippet para UI
- Template
search.jsonno tema -
corvex validate .
Veja também
- Product Card — snippet reutilizado
- Data Contract —
PageContextMap - Golden Path — search section

