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"