Перейти к основному контенту

searchProduct

Быстрый поиск объектов страниц продуктов с ограниченным выводом

Products.searchProduct(name, langCode)

const value = await Products.searchProduct('cup')
Схема

name:* строка
Текст для поиска объектов страниц продуктов (поиск основан на поле заголовка объекта localizeInfos с учетом языка)
пример: cup

langCode: строка
Код языка. По умолчанию "en_US"
пример: en_US

Этот метод выполняет быстрый поиск объектов страниц продуктов на основе текстового запроса name. Поиск осуществляется по полю заголовка объекта localizeInfos с учетом указанного кода языка lang. Он возвращает Promise, который разрешается в массив индексированных объектов Product.

Пример возвращаемого значения:

[
{
"id": 4,
"localizeInfos": {
"title": "Cosmo"
},
"statusIdentifier": null,
"statusLocalizeInfos": {},
"attributeSetIdentifier": "products",
"position": 1,
"templateIdentifier": null,
"isPositionLocked": false,
"shortDescTemplateIdentifier": null,
"price": 150,
"additional": {
"prices": {
"min": 120,
"max": 150
}
},
"sku": null,
"isSync": true,
"attributeValues": {
"price": {
"type": "integer",
"value": "150",
"position": 1,
"isProductPreview": false
},
"product-name": {
"type": "string",
"value": "Cosmo",
"position": 0,
"isProductPreview": false
},
"currency_products": {
"type": "string",
"value": "",
"position": 2,
"isProductPreview": false
}
},
"isVisible": true,
"productPages": {
"id": 6,
"pageId": 2,
"productId": 4,
"positionId": 229
},
"blocks": "product_block"
}
]
Схема

id: число
идентификатор объекта
пример: 1764

additional: Record<string, any>
дополнительное значение из индекса
пример:

{
"prices": {
"min": 0,
"max": 100
}
}

statusLocalizeInfos: CommonLocalizeInfos
json-описание объекта статуса элемента с учетом языка
пример:

{
"title": "Продукт"
}

localizeInfos: Record<string, any>
json-описание основного объекта данных страницы с учетом языка "en_US" (например)
пример:

{
"en_US": {
"title": "Каталог",
"plainContent": "Содержимое для каталога",
"htmlContent": "<b>Содержимое для каталога</b>",
"menuTitle": "Каталог"
}
}

isVisible: булево
Флаг видимости страницы
пример: true

position: число
номер позиции (для сортировки)
пример: 192

templateIdentifier: строка
пользовательский идентификатор связанного шаблона
пример: my-template

attributeSetId: число
идентификатор набора атрибутов
пример: 7

blocks: массив
блоки продукта
пример:

["product_block"]

isSync: булево
индикатор индексации страницы (true или false)
пример: false

attributeValues: Record<string, string>
Массив значений атрибутов из индекса (представленный в виде пары пользовательский идентификатор атрибута: значение атрибута)
пример:

{
"en_US": {
"marker": {
"value": "",
"type": "string"
}
}
}

statusId: число
идентификаторы статусов страницы продукта (могут быть null)
пример: 1

sku: строка
значение SKU продукта, взятое из индекса
пример: 1

relatedIds: массив
идентификаторы связанных страниц продуктов
пример:

[ 1, 2, 3 ]

price: число
значение цены страницы продукта, взятое из индекса
пример: 0

templateIdentifier строка
пользовательский идентификатор связанного шаблона
пример: my-template

shortDescTemplateIdentifier строка
пользовательский идентификатор связанного шаблона для краткого описания
пример: my-template-short