getProductsByPageUrl
Buscar todos los objetos de producto con paginación para la categoría seleccionada (por su URL)
Products.getProductsByPageUrl(url, body, langCode, userQuery)
const body = [
{
"attributeMarker": "price",
"conditionMarker": "mth",
"statusMarker": "waiting",
"conditionValue": 1,
"pageUrls": [
"23-laminat-floorwood-maxima"
],
"isNested": false,
"title": ""
},
{
"attributeMarker": "price",
"conditionMarker": "lth",
"conditionValue": 3,
"pageUrls": [
"23-laminat-floorwood-maxima"
],
"isNested": false,
"title": ""
}
]
const value = await Products.getProductsByPageUrl('catalog', body)
Esquema
url:* string
URL de la página
ejemplo: catalog
body:* IFilterParams[]
Cuerpo de la solicitud
ejemplo: []
langCode: string
Parámetro del código de idioma. Por defecto "en_US"
ejemplo: en_US
userQuery: IProductsQuery
Parámetros de consulta opcionales.
userQuery.offset: number
Parámetro opcional para paginación, por defecto es 0
ejemplo: 0
userQuery.limit: number
Parámetro opcional para paginación, por defecto es 30
ejemplo: 30
userQuery.statusMarker: string
Identificador opcional del estado de la página del producto
ejemplo: waiting
userQuery.conditionValue: string
Valor opcional que se está buscando
ejemplo: 1
userQuery.conditionMarker: string
Identificador opcional de la condición del filtro por la cual se filtran los valores
ejemplo: mth
userQuery.attributeMarker: string
Identificador de texto opcional del atributo indexado por el cual se filtran los valores
ejemplo: price
userQuery.sortOrder: string
Orden de clasificación opcional DESC | ASC
ejemplo: DESC
userQuery.sortKey: string
Campo opcional para ordenar (id, title, date, price, position, status)
ejemplo: id
Esquema (cuerpo)
attributeMarker: string
identificador textual del atributo
ejemplo: price
conditionMarker: string
identificador textual de la condición
ejemplo: in
statusMarker: string
identificador textual del estado de la página del producto (por defecto no establecido)
ejemplo: status_1
conditionValue: number
valor de la condición
ejemplo: 1
pageUrls: Array<string>
parte única de la URL de la página (después de la última "/")
title: string
ejemplo: Iphone 17 Pro
nombre del producto
isNested: boolean
indicador de búsqueda para todas las categorías anidadas (pageUrls)
ejemplo: false
Este método busca todos los objetos de productos con paginación para la categoría seleccionada, basado en los parámetros de consulta proporcionados (userQuery). Devuelve una Promesa que se resuelve en un array de elementos, donde cada elemento es un objeto.
Ejemplo de retorno:
{
"total": 100,
"items": [
{
"id": 2,
"localizeInfos": {
"title": "Caja"
},
"statusIdentifier": "sold",
"statusLocalizeInfos": {
"title": "Vendido"
},
"attributeSetIdentifier": "products",
"position": 3,
"templateIdentifier": null,
"shortDescTemplateIdentifier": null,
"price": 148,
"additional": {
"prices": {
"min": 120,
"max": 150
}
},
"sku": null,
"isSync": true,
"attributeValues": {
"price": {
"type": "integer",
"value": 148,
"position": 1,
"isProductPreview": false
},
"product-name": {
"type": "string",
"value": "Texto de la caja",
"position": 0,
"isProductPreview": false
},
"currency_products": {
"type": "string",
"value": "$",
"position": 2,
"isProductPreview": false
}
},
"isVisible": true,
"isPositionLocked": false
}
]
}
Esquema
total: number
número total de registros encontrados
ejemplo: 100
id: number
identificador del objeto
ejemplo: 1764
additional: Record<string, any>
valor adicional del índice
ejemplo:
{
"prices": {
"min": 0,
"max": 100
}
}
statusLocalizeInfos: CommonLocalizeInfos
descripción json del objeto de estado del ítem, teniendo en cuenta el idioma
ejemplo:
{ "title": "Producto" }
localizeInfos: Record<string, any>
descripción json del objeto de datos de la página principal teniendo en cuenta el idioma "en_US" (por ejemplo)
ejemplo:
{
"en_US": {
"title": "Catálogo",
"plainContent": "Contenido para el catálogo",
"htmlContent": "<b>Contenido para el catálogo</b>",
"menuTitle": "Catálogo"
}
}
isVisible: boolean
Indicador de visibilidad de la página
ejemplo: true
position: number
número de posición (para ordenación)
ejemplo: 192
templateIdentifier: string
identificador personalizado de la plantilla asociada
ejemplo: my-template
attributeSetId: number
identificador del conjunto de atributos
ejemplo: 7
blocks: array
bloques de producto
ejemplo: ['product_block']
isSync: boolean
indicador de indexación de la página (true o false)
ejemplo: false
attributeValues: Record<string, string>
Array de valores de atributos del índice (presentados como un par de identificador de atributo personalizado: valor de atributo)
ejemplo:
{
"en_US": {
"marker": {
"value": "",
"type": "string"
}
}
}
statusId: number
identificadores de estado de la página del producto (puede ser nulo)
ejemplo: 1
sku: string
valor SKU del producto tomado del índice
ejemplo: 1
relatedIds: array
identificadores de páginas de productos relacionados
ejemplo:
[ 1, 2, 3 ]
price: number
valor del precio de la página del producto tomado del índice
ejemplo: 0
templateIdentifier string
identificador personalizado de la plantilla asociada
ejemplo: my-template
shortDescTemplateIdentifier string
identificador personalizado de la plantilla asociada para la descripción corta
ejemplo: my-template-short