getProductsByPageUrl
Ищите все объекты продуктов с пагинацией для выбранной категории (по ее 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)
Схема
url(обязательный): строка
URL страницы
пример: "catalog"
body: IFilterParams[]
Тело запроса. По умолчанию: []
пример:
[
{
"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": ""
}
]
langCode: строка
Код языка. По умолчанию: "en_US"
пример: "en_US"
userQuery: IProductsQuery
Необязательные параметры запроса
offset(обязательный): число
Параметр для пагинации. По умолчанию: 0.
limit(обязательный): число
Параметр для пагинации. По умолчанию: 30.
sortOrder(обязательный): строка
Порядок сортировки "DESC" | "ASC". По умолчанию: "DESC".
sortKey(обязательный): строка
Поле для сортировки (по умолчанию - null). Возможные значения: "id", "position", "title", "date", "price". По умолчанию: null.
templateMarker: строка
Идентификатор статуса страницы продукта, по умолчанию null.
пример: "template_12345"
statusMarker: строка
Идентификатор статуса страницы продукта, по умолчанию null.
пример: "in_stock"
conditionValue: строка
Исковое значение, по умолчанию null.
пример: "new"
attributeMarker: строка
Текстовый идентификатор индексируемого атрибута, по которому фильтруются значения, по умолчанию null.
пример: "color"
conditionMarker: строка
Идентификатор условия фильтра, по которому фильтруются значения, по умолчанию null.
пример: "equals"
Этот метод ищет все объекты продуктов с пагинацией для выбранной категории, основываясь на предоставленных параметрах запроса (userQuery). Он возвращает Promise, который разрешается в массив элементов, где каждый элемент является объектом.
Пример возвращаемого значения:
{
"items": [
{
"id": 2954,
"localizeInfos": {
"title": "Коробка"
},
"statusIdentifier": "sale",
"statusLocalizeInfos": {
"title": "Распродажа"
},
"attributeSetIdentifier": "products",
"position": 3,
"templateIdentifier": null,
"shortDescTemplateIdentifier": "product_preview",
"price": 50,
"additional": {
"prices": {
"min": 50,
"max": 150
}
},
"sku": null,
"isSync": true,
"attributeValues": {
"product-name": {
"type": "string",
"value": "product-name",
"isIcon": false,
"position": 0,
"additionalFields": [],
"isProductPreview": false
},
"price": {
"type": "integer",
"value": 50,
"isIcon": false,
"position": 1,
"additionalFields": [],
"isProductPreview": false
},
"currency_products": {
"type": "string",
"value": "usd",
"isIcon": false,
"position": 2,
"additionalFields": [],
"isProductPreview": false
},
"img": {
"type": "image",
"value": [],
"isIcon": false,
"position": 3,
"additionalFields": [],
"isProductPreview": false
}
},
"categories": [
"catalog"
],
"isVisible": true,
"isPositionLocked": false
},
{
"id": 2955,
"localizeInfos": {
"title": "Продукт"
},
"statusIdentifier": "sale",
"statusLocalizeInfos": {
"title": "Распродажа"
},
"attributeSetIdentifier": null,
"position": 2,
"templateIdentifier": null,
"shortDescTemplateIdentifier": null,
"price": null,
"additional": {
"prices": {
"min": 50,
"max": 150
}
},
"sku": null,
"isSync": false,
"attributeValues": {},
"categories": [
"catalog"
],
"isVisible": true,
"isPositionLocked": false
},
{
"id": 2957,
"localizeInfos": {
"title": "Космо"
},
"statusIdentifier": "sale",
"statusLocalizeInfos": {
"title": "Распродажа"
},
"attributeSetIdentifier": "products",
"position": 1,
"templateIdentifier": null,
"shortDescTemplateIdentifier": null,
"price": 150,
"additional": {
"prices": {
"min": 50,
"max": 150
}
},
"sku": null,
"isSync": true,
"attributeValues": {
"product-name": {
"type": "string",
"value": "Космо",
"isIcon": false,
"position": 0,
"additionalFields": [],
"isProductPreview": false
},
"price": {
"type": "integer",
"value": 150,
"isIcon": false,
"position": 1,
"additionalFields": [],
"isProductPreview": false
},
"currency_products": {
"type": "string",
"value": "",
"isIcon": false,
"position": 2,
"additionalFields": [],
"isProductPreview": false
},
"img": {
"type": "image",
"value": [],
"isIcon": false,
"position": 3,
"additionalFields": [],
"isProductPreview": false
}
},
"categories": [
"catalog"
],
"isVisible": true,
"isPositionLocked": false
}
],
"total": 3
}
Схема
total: число
Общее количество найденных продуктов.
пример: 100
items: IProductsEntity[]
Массив сущностей продуктов.
пример:
[
{
"id": 12345,
"title": "Продукт 1"
},
{
"id": 67890,
"title": "Продукт 2"
}
]