Hotsite
A query hotsite retorna informações necessárias para a montagem de uma página de hotsite, especificado por ID ou por URL.
Requisição
Parâmetros
Parâmetro | Tipo | Obrigatório | Descrição |
---|---|---|---|
hotsiteId | Long | Não | ID de cadastro do hotsite |
url | String | Não | URL de acesso à página do hotsite (pathname) |
Apesar de ambos não serem obrigatórios, pelo menos um dos parâmetros deve ser passado para a requisição
Campos
Campo | Descrição |
---|---|
aggregations | Informações dos produtos cadastrados no hotsite para montagem de filtros na página (ex: Cores, Marcas, categorias, etc) |
banners | Lista de banners cadastrados no hotsite |
breadcrumbs | Categorias navegadas até a página do hotsite |
contents | Lista de conteúdos cadastrados no hotsite |
endDate | Data de expiração de exibição do hotsite |
expression | Expressão utilizada para associar produtos ao hotsite |
hotsiteId | ID de cadastro do hotsite |
name | Nome do hotsite |
pageSize | Quantidade de produtos que são mostrados por página |
products | Lista de produtos associados ao hotsite paginados por cursor |
productsByOffset | Lista de produtos associados ao hotsite paginados por offset |
seo | Lista de elementos SEO cadastrados no hotsite |
sorting | Direção e chave de ordenação definidos para o hotsite |
startDate | Data de início de exibição do hotsite |
subtype | Subtipo do hotsite (CATEGORY, BRAND, PORTFOLIO ou BUY_LIST) |
template | Template do SE utilizado no hotsite |
url | Pathname da URL do hotsite |
Exemplo
Neste exemplo são pedidas informações do hotsite calcados/melissa
e dos 2 primeiros produtos cadastrados:
query{
hotsite(url:"calcados/melissa"){
aggregations {
maximumPrice
minimumPrice
}
breadcrumbs {
link
text
}
expression
subtype
pageSize
products (first: 2) {
nodes {
productId
productName
prices {
price
}
}
}
seo{
content
httpEquiv
name
scheme
type
}
}
}
Mostrar resultado
{
"data": {
"hotsite": {
"aggregations": {
"maximumPrice": 7650,
"minimumPrice": 8.5
},
"breadcrumbs": [
{
"link": "/calcados",
"text": "Calçados"
},
{
"link": "/calcados/melissa",
"text": "Melissa"
}
],
"expression": "categoriaHotSite__ix:99calcados99melissa99",
"subtype": "CATEGORY",
"pageSize": 24,
"products": {
"nodes": [
{
"productId": 43,
"productName": "Bota Melissa Ankle Boot Jeremy Scott Azul Preto 31916",
"prices": {
"price": 7650
}
},
{
"productId": 45,
"productName": "Bota Melissa Ankle Boot Jeremy Scott Preto Opaco 31916",
"prices": {
"price": 7650
}
}
]
},
"seo": [
{
"content": "Melissa",
"httpEquiv": null,
"name": "keywords",
"scheme": null,
"type": "META"
},
{
"content": "Melissa - Loja",
"httpEquiv": null,
"name": "description",
"scheme": null,
"type": "META"
},
{
"content": "text/html; charset=iso-8859-1",
"httpEquiv": "content-type",
"name": null,
"scheme": null,
"type": "META"
},
{
"content": "Melissa - Calçados - Loja",
"httpEquiv": null,
"name": null,
"scheme": null,
"type": "TITLE"
}
]
}
}
}
Ordenação Padrão
Caso nenhum parâmetro de ordenação seja especificado na query products ou productsByOffset (como por exemplo: products (first: 10, sortDirection: DESC, sortKey: PRICE)
, é aplicada uma lógica de ordenação padrão considerando na configuração de prioridades de categorias e hotsites, nesta ordem:
- Categorias: Os produtos serão ordenados de acordo com a prioridade configurada para as categorias. Isso significa que os produtos pertencentes a categorias com prioridade mais alta serão exibidos primeiro na lista de resultados.
- Hotsites: Caso contrário, a prioridade configurada nos hotsites será considerada para determinar a ordem de exibição. Os produtos associados a hotsites com prioridade mais alta serão listados antes dos produtos de hotsites com prioridade mais baixa.
Esse recurso oferece flexibilidade ao permitir diferentes tipos de filtros e opções de ordenação para criar vitrines personalizadas, como exibir os produtos mais vendidos ou os lançamentos mais recentes.
Retornando o campo aliasComplete relacionado ao produto
Abaixo temos um exemplo do retorno do campo aliasComplete, onde traz o alias relacionado ao produto e que leva em consideração a configuração Configuração de URL de Produto dentro do painel administrativo.
query {
hotsite(url: "outlet") {
name
productsByOffset {
items {
alias: aliasComplete
}
}
}
}
Mostrar resultado
{
"data": {
"hotsite": {
"name": "outlet",
"productsByOffset": {
"items": [
{
"alias": "produto/bota-88fpc600-pvc-branca-cano-curto-73597"
},
{
"alias": "produto/taxa-tde-70148"
},
{
"alias": "produto/envelope-73026"
}
]
}
}
}
}
Updated 3 months ago