getMenusByMarker
Obtén un menú por su marcador.
Descripción
Obtiene un menú y sus páginas por el marcador del menú. Se resuelve en un IMenusEntity.
.getMenusByMarker(
,
);
Esquema de parámetros
Esquema
marker(requerido): string
Marcador del menú.
ejemplo: "main_menu"
langCode: cadena
Código de idioma. Predeterminado: el langCode pasado a defineOneEntry ("en_US" si no se pasó ninguno).
ejemplo: "en_US"
Ejemplos
Ejemplo mínimo
const response = await Menus.getMenusByMarker('main_menu');
Ejemplo de respuesta
{
"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 respuesta
Esquema: IMenusEntity
id: número
ID del menú.
ejemplo: 1
identifier: cadena
Marcador del menú.
ejemplo: "main_menu"
localizeInfos: ILocalizeInfo
Datos localizados del menú.
ejemplo:
{
"title": "menu"
}
pages: IMenusPages[]
Páginas del menú.
ejemplo:
[
{
"id": null,
"pageUrl": null,
"localizeInfos": {},
"attributeValues": {},
"parentId": null,
"position": 1
}
]
pages.children: IMenusPages[]
Elementos de menú anidados (páginas hijas).
ejemplo:
[
{
"id": null,
"pageUrl": null,
"localizeInfos": {},
"attributeValues": {},
"parentId": null,
"position": 1
}
]
pages.id: number | null
ID de la página, o del elemento personalizado cuando itemType es custom.
ejemplo: 1
pages.pageUrl: string | null
URL (marcador) de la página; para un elemento personalizado (itemType: "custom"), el valor configurado para el elemento, como un enlace externo.
ejemplo: "about"
pages.localizeInfos: ILocalizeInfo
Datos localizados del elemento: título, título del menú y contenido.
ejemplo:
{
"title": "menu"
}
pages.attributeValues: IAttributeValues
Valores de atributos de la página, indexados por el marcador del atributo.
ejemplo:
{
"color": {
"type": "string",
"value": "red",
"isIcon": false,
"position": 0,
"additionalFields": {}
}
}
pages.position: number
Posición usada para ordenar.
ejemplo: 1
pages.parentId: number | null
ID del elemento de menú padre; null para un elemento de nivel superior.
ejemplo: null
pages.parentType: 'page' | 'custom' | null
Tipo del elemento padre: page o custom; null (con parentId: null) para un elemento de nivel superior. Los ids de páginas y de elementos personalizados se solapan, así que este campo es necesario para identificar al padre.
ejemplo: null
pages.itemType: 'page' | 'custom'
Tipo de este elemento: page o custom. Los hijos del elemento llevan este valor en parentType.
ejemplo: "page"