Saltar al contenido principal

searchPage

Búsqueda rápida de objetos de página con salida limitada.

Descripción

Este método realiza una búsqueda rápida de objetos de página basada en una consulta de texto (nombre). Devuelve una Promesa que se resuelve en un array de objetos IPagesEntity o un array vacío [].

Pages.searchPage(

name*, url, langCode

);

Esquema de parámetros

Esquema

name(requerido): string
Texto para buscar objetos de página (la búsqueda se realiza en el campo título del objeto localizeInfos teniendo en cuenta el idioma)
ejemplo: "Sobre Nosotros"

url: string
URL de la página
ejemplo: "catalog"

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

Ejemplos

Ejemplo mínimo

const response = await Pages.searchPage('cup');

Ejemplo con atributos

const response = await Pages.searchPage('cup', 'en_US');

Ejemplo de respuesta

[
{
"id": 10,
"parentId": null,
"pageUrl": "catalog",
"depth": 0,
"localizeInfos": {
"title": "Catalog",
"menuTitle": "Catalog",
"htmlContent": "",
"plainContent": ""
},
"isVisible": true,
"blocks": [
"product_block",
"test",
"freq_ordered",
"..."
],
"type": "catalog_page",
"templateIdentifier": "template",
"attributeSetIdentifier": "page",
"attributeValues": {
"text": {
"type": "string",
"value": "catalog text",
"position": 0,
"additionalFields": {}
},
"number": {
"type": "integer",
"value": 0,
"position": 1,
"additionalFields": {}
},
"real": {
"type": "real",
"value": "",
"position": 2,
"additionalFields": {}
},
"float": {
"type": "float",
"value": 0,
"position": 3,
"additionalFields": {}
}
},
"moduleFormConfigs": [],
"isSync": true,
"template": {
"id": 4,
"attributeSetIdentifier": null,
"title": "Template",
"generalTypeId": 4,
"identifier": "template",
"version": 0,
"generalTypeName": "catalog_page",
"attributeValues": {},
"position": 1
}
}
]

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 de 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"