Saltar al contenido principal

getPages

Obteniendo todos los objetos de página con información del producto como un array.

Descripción​

Este método recupera todas las páginas creadas como un array desde la API. Devuelve una Promesa que se resuelve en un array de objetos IPagesEntity.

.getPages(

);

Esquema de parámetros​

Esquema

langCode: string
Código de idioma. Predeterminado: "en_US"
ejemplo: "en_US"

Ejemplos​

Ejemplo mínimo​

const response = await Pages.getPages();

Ejemplo con atributos​

const response = await Pages.getPages('en_US');

Ejemplo de respuesta​

[
{
"id": 9,
"config": {},
"depth": 1,
"parentId": 8,
"pageUrl": "blog1",
"attributeSetIdentifier": null,
"localizeInfos": {
"title": "Blog 1",
"htmlContent": "",
"plainContent": "",
"menuTitle": "Blog 1"
},
"isVisible": true,
"products": 0,
"childrenCount": 0,
"type": "common_page",
"position": 2,
"templateIdentifier": null,
"isSync": false,
"categoryPath": "blog/blog1",
"rating": {},
"attributeValues": {},
"moduleFormConfigs": []
},
{
"id": 8,
"config": {},
"depth": 0,
"parentId": null,
"pageUrl": "blog",
"attributeSetIdentifier": "page",
"localizeInfos": {
"title": "Blog",
"htmlContent": "",
"plainContent": "",
"menuTitle": "Blog"
},
"isVisible": true,
"products": 0,
"childrenCount": 2,
"type": "common_page",
"position": 3,
"templateIdentifier": "template",
"isSync": true,
"categoryPath": "blog",
"rating": {},
"attributeValues": {
"text": {
"type": "string",
"value": "some text",
"isIcon": false,
"position": 0,
"additionalFields": {},
"isProductPreview": false
},
"number": {
"type": "integer",
"value": 5,
"isIcon": false,
"position": 1,
"additionalFields": {},
"isProductPreview": false
},
"real": {
"type": "real",
"value": 10,
"isIcon": false,
"position": 2,
"additionalFields": {},
"isProductPreview": false
},
"float": {
"type": "float",
"value": 12,
"isIcon": false,
"position": 3,
"additionalFields": {},
"isProductPreview": false
}
},
"moduleFormConfigs": [
{
"id": 9,
"formIdentifier": "full_form",
"moduleIdentifier": "content",
"isGlobal": false,
"isClosed": false,
"isModerate": true,
"viewOnlyMyData": false,
"commentOnlyMyData": false,
"entityIdentifiers": [
{
"id": "blog",
"isNested": false
}
],
"formDataCount": 6185,
"ratingCalculation": "average",
"allowHalfRatings": null,
"maxRatingScale": null,
"isAnonymous": null,
"allowRerating": null,
"isRating": null,
"entityFormDataCount": {
"blog": 6185
},
"nestedEntityIdentifiers": [],
"exceptionIds": []
},
{
"id": 3,
"formIdentifier": "file_form",
"moduleIdentifier": "content",
"isGlobal": false,
"isClosed": false,
"isModerate": false,
"viewOnlyMyData": false,
"commentOnlyMyData": false,
"entityIdentifiers": [
{
"id": "blog",
"isNested": false
}
],
"formDataCount": 675,
"ratingCalculation": "average",
"allowHalfRatings": null,
"maxRatingScale": null,
"isAnonymous": null,
"allowRerating": null,
"isRating": null,
"entityFormDataCount": {
"blog": 675
},
"nestedEntityIdentifiers": [],
"exceptionIds": []
},
{
"id": 2,
"formIdentifier": "test-form",
"moduleIdentifier": "content",
"isGlobal": false,
"isClosed": false,
"isModerate": false,
"viewOnlyMyData": false,
"commentOnlyMyData": false,
"entityIdentifiers": [
{
"id": "blog",
"isNested": false
}
],
"formDataCount": 897,
"ratingCalculation": "average",
"allowHalfRatings": null,
"maxRatingScale": null,
"isAnonymous": null,
"allowRerating": null,
"isRating": null,
"entityFormDataCount": {
"blog": 897
},
"nestedEntityIdentifiers": [],
"exceptionIds": []
}
],
"template": {
"id": 4,
"attributeSetIdentifier": null,
"title": "Template",
"generalTypeId": 4,
"identifier": "template",
"version": 0,
"generalTypeName": "catalog_page",
"attributeValues": {},
"position": 1
}
},
{
"id": 49,
"config": {},
"depth": 1,
"parentId": 8,
"pageUrl": "blog2",
"attributeSetIdentifier": null,
"localizeInfos": {
"title": "Blog 2",
"htmlContent": "",
"plainContent": "",
"menuTitle": "Blog 2"
},
"isVisible": true,
"products": 0,
"childrenCount": 0,
"type": "common_page",
"position": 1,
"templateIdentifier": null,
"isSync": false,
"categoryPath": "blog2",
"rating": {},
"attributeValues": {},
"moduleFormConfigs": []
},
"..."
]

Esquema de respuesta​

Esquema: IPagesEntity[]

id: number
El identificador del objeto.
ejemplo: 8

parentId: number | null
El id de la página padre, si contiene null, entonces es la página de nivel superior.
ejemplo: 10

pageUrl: string
Url única de la página.
ejemplo: "blog"

depth: number
Profundidad de anidación de la página en relación con parentId.
ejemplo: 10

localizeInfos: ILocalizeInfo
El nombre de la página, teniendo en cuenta la localización.
ejemplo:

{
"title": "Blog",
"menuTitle": "Blog",
"htmlContent": "",
"plainContent": ""
}

isVisible: boolean
Un signo de la visibilidad de la página.
ejemplo: true

type: PageType
Tipo de página.
ejemplo: "common_page"

templateIdentifier: string | null
Id de usuario de la plantilla vinculada.
ejemplo: "template"

attributeSetIdentifier: string | null
Id del conjunto de atributos.
ejemplo: "page"

attributeValues: IAttributeValues
Mapa de valores de atributos indexados por marcador; objeto vacío cuando no hay ninguno.
ejemplo:

{
"text": {
"type": "string",
"value": "some text",
"position": 0,
"additionalFields": []
}
}

isSync: boolean
Indicación de la indexación de la página.
ejemplo: true

template: object
Objeto de plantilla.
ejemplo:

{}

position: number
Número de ítem (para ordenación).
ejemplo: 2

config: Record<string, number>
Configuraciones de salida para páginas de catálogo.
ejemplo:

{
"rowsPerPage": 1,
"productsPerRow": 1
}

products: number
El número de productos vinculados a la página.
ejemplo: 0

childrenCount: number
Conteo de hijos.
ejemplo: 1

blocks: IBlockEntity[] | string[]
bloques.
ejemplo:

{
"id": 4,
"attributeSetIdentifier": null,
"title": "Template",
"generalTypeId": 4,
"identifier": "template",
"version": 0,
"generalTypeName": "catalog_page",
"attributeValues": {},
"position": 1
}

blocks.attributeValues: IAttributeValues
Mapa de valores de atributos indexados por marcador; objeto vacío cuando no hay ninguno.
ejemplo:

{
"block-text": {
"type": "string",
"value": "some text",
"isIcon": false,
"position": 0,
"additionalFields": [],
"isProductPreview": false
}
}

blocks.id: number
Identificador único del bloque.
ejemplo: 1234

blocks.localizeInfos: ILocalizeInfo
Información de localización para el bloque.
ejemplo:

{
"key": "value"
}

blocks.version: number
Versión de la entidad del bloque.
ejemplo: 1

blocks.identifier: string
Identificador de cadena único para el bloque.
ejemplo: "block1"

blocks.type: BlockType
Tipo del bloque.
ejemplo: "product"

blocks.position: number
Posición del bloque para ordenación.
ejemplo: 1

blocks.templateIdentifier: string | null
Identificador de la plantilla utilizada por el bloque, o null si no es aplicable.
ejemplo: "template1"

blocks.isVisible: boolean
Indica si el bloque es visible.
ejemplo: true

blocks.countElementsPerRow: number
Número de elementos mostrados por fila en el bloque, si es aplicable.
ejemplo: 3

blocks.quantity: number
Cantidad de ítems en el bloque, si es aplicable.
ejemplo: 5

blocks.similarProducts: IProductsResponse
Respuesta que contiene productos similares asociados con el bloque.
ejemplo:

{
"total": 10,
"items": []
}

blocks.products: IProductsEntity[]
Array de entidades de productos asociadas con el bloque.
ejemplo:

[
{
"id": 1,
"name": "Product 1"
},
{
"id": 2,
"name": "Product 2"
}
]

moduleFormConfigs: Array<IFormConfig>
Configuraciones de formularios del módulo vinculadas a la página.

rating: IRating
Datos de calificación.

total: string
Número total de productos vinculados a la página.
ejemplo: "10"

categoryPath: string | null
Cadena de ruta de categoría; null para páginas anidadas que no tienen su propia ruta de categoría.
ejemplo: "catalog"

distance: number
Distancia coseno a la consulta. Devuelto solo por el endpoint de búsqueda semántica (vector) cuando se pasa debug: true en el cuerpo de búsqueda.
ejemplo: 0.12


Ejemplos de uso​

Guía paso a paso en la documentación:

Pruébalo en vivo​

Ejecuta este método de forma interactiva en el sandbox de JS SDK — conecta tu URL de Proyecto y Token de App en la primera visita, luego abre: