getMenusByMarker
O módulo 'Menus' define a estrutura e a navegação do seu site.
Descrição
Ele fornece aos visitantes uma maneira fácil de navegar pelas seções da sua aplicação e encontrar as informações de que precisam.
Este método recupera um único objeto de menu com base em seu marcador (marker) da API. Ele retorna uma Promise que resolve para um único objeto de menu IMenusEntity como um objeto com páginas incluídas.
Menus.getMenusByMarker(
marker*,
langCode
);
Esquema de parâmetros
Esquema
marker(obrigatório): string
Marcador do menu
exemplo: "main_menu"
langCode: string
Código do idioma. Padrão: "en_US"
exemplo: "en_US"
Exemplos
Exemplo mínimo
const response = await Menus.getMenusByMarker('my-marker')
Exemplo de resposta
{
"id": 1,
"identifier": "main_menu",
"localizeInfos": {
"title": "menu"
},
"pages": [
{
"id": 8,
"pageUrl": "blog",
"localizeInfos": {
"title": "Blog",
"menuTitle": "Blog",
"htmlContent": "",
"plainContent": ""
},
"attributeValues": {},
"parentId": null,
"parentType": null,
"position": 1,
"itemType": "page",
"children": [
{
"id": 9,
"pageUrl": "blog1",
"localizeInfos": {
"title": "Blog 1",
"menuTitle": "Blog 1",
"htmlContent": "",
"plainContent": ""
},
"attributeValues": {},
"parentId": 8,
"parentType": "page",
"position": 1,
"itemType": "page",
"children": []
}
]
},
{
"id": 10,
"pageUrl": "catalog",
"localizeInfos": {
"title": "Catalog",
"menuTitle": "Catalog",
"htmlContent": "",
"plainContent": ""
},
"attributeValues": {},
"parentId": null,
"parentType": null,
"position": 2,
"itemType": "page",
"children": []
}
]
}
Esquema de resposta
Esquema: IMenusEntity
id: number
O identificador único do menu.
exemplo: 1
identifier: string
O identificador do menu.
exemplo: "main_menu"
localizeInfos: ILocalizeInfo
Contém informações de localização.
exemplo:
{
"title": "menu"
}
pages: IMenusPages[]
Array de páginas do menu.
exemplo:
[
{
"id": null,
"pageUrl": null,
"localizeInfos": {},
"attributeValues": {},
"parentId": null,
"position": 1
}
]
pages.children: IMenusPages[]
Contém um array com objetos de páginas filhas.
exemplo:
[
{
"id": null,
"pageUrl": null,
"localizeInfos": {},
"attributeValues": {},
"parentId": null,
"position": 1
}
]
pages.id: number | null
O identificador único do menu.
exemplo: 1
pages.pageUrl: string | null
A string da URL da página.
exemplo: "about"
pages.localizeInfos: ILocalizeInfo
Os dados do menu, levando em conta a localização.
exemplo:
{
"title": "menu"
}
pages.attributeValues: IAttributeValues
Conjuntos de atributos.
exemplo:
{
"color": "red",
"size": "large"
}
pages.position: number
A posição do menu.
exemplo: 1
pages.parentId: number | null
O id do pai do menu.
exemplo: null
pages.parentType: 'page' | 'custom' | null
Tipo do item pai: page para uma página de menu, custom para um item personalizado; null junto com parentId significa nível superior. Os ids de páginas e os ids de itens personalizados se sobrepõem, então o pai é ambíguo sem isso.
exemplo: null
pages.itemType: 'page' | 'custom'
Tipo deste item em si: page ou custom. Este é o valor que os filhos do item devem passar em parentType.
exemplo: "page"