Skip to main content

Menus e Blog

APIs públicas para navegação e conteúdo editorial (blog / artigos). Menus e blogs devem estar publicados na loja para aparecer na vitrine (source: published).

Cliente SDK

Resposta normalizada:

Hook com cache

Mega menu

Itens type: "MEGA_MENU" com megaMenu.enabled: true renderizam colunas + destaque:
Helper de URL:
Tipos suportados: INTERNAL_LINK, EXTERNAL_LINK, PRODUCT, COLLECTION, CATEGORY, PAGE, BLOG, BLOG_ARTICLE, MEGA_MENU. Cada item pode ter children. O mapper para em profundidade 8 e descarta ciclo. menus.get('') e getMenu de um handle ausente devolvem null. O header deve mostrar um fallback, como em Header. Para o link, use resolveMenuItemUrl(item). Não monte a URL na mão a partir de resourceId.

Blog / Artigos

Cliente SDK

Listagem não inclui bodyHtml. Detalhe inclui corpo completo.

Hook

Contexto de página

Preview/editor query params:
usePage devolve o contexto da página atual. O texto passado não escolhe outro contexto. Em um template blog, leia blog e articles. Em um template article, leia article. Fora dessas páginas esses campos não vêm preenchidos. URLs sugeridas na vitrine:
  • /blogs/{blogHandle} — listagem
  • /blogs/{blogHandle}/articles/{articleHandle} — artigo

Inspector (schema)

O campo menu é estável e guarda o handle. O campo blog é experimental.
Como usar no header: Header. Artigo de exemplo: Blog. O mapper de artigo completo inclui bodyHtml quando a API envia. A listagem usa só o resumo, sem corpo. seoTitle e seoDescription também vêm no objeto quando a API envia. Esta página não garante rota publicada nem SSR.