searchProduct
Sayfa nesneleri için sınırlı çıktı ile hızlı arama.
Açıklama
Bu yöntem, bir metin sorgu adı temelinde ürün sayfa nesneleri için hızlı bir arama gerçekleştirir. Arama, belirtilen lang dil kodunu dikkate alarak localizeInfos nesnesinin başlık alanında gerçekleştirilir. Bir Promise döner ve bu Promise, dizinlenmiş Ürün nesneleri IProductsEntity içeren bir dizi ile çözülür.
Products.searchProduct(
name*,
langCode
);
Parametreler şeması
Şema
name(required): string
Ürün sayfa nesnelerini aramak için metin (arama, localizeInfos nesnesinin başlık alanına dayanmaktadır ve dil dikkate alınmaktadır)
örnek: "laminat"
langCode: string
Dil kodu. Varsayılan: "en_US"
örnek: "en_US"
Örnekler
Minimal örnek
const response = await Products.searchProduct('cup');
langCode niteliği ile örnek
const response = await Products.searchProduct('cup', 'en_US');
Örnek yanıt
[
{
"id": 2957,
"attributeSetIdentifier": "products",
"localizeInfos": {
"title": "Cosmo"
},
"statusLocalizeInfos": {
"title": "İndirim"
},
"isVisible": true,
"statusIdentifier": "sale",
"position": 1,
"templateIdentifier": null,
"shortDescTemplateIdentifier": null,
"price": 150,
"additional": {
"prices": {
"min": 51,
"max": 150
}
},
"sku": null,
"isSync": true,
"categories": [
"catalog"
],
"attributeValues": {
"product-name": {
"type": "string",
"value": "Cosmo",
"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
}
},
"productPages": [
{
"id": 2850,
"pageId": 10,
"productId": 2957,
"positionId": 3193,
"categoryPath": "catalog"
}
],
"blocks": [
"product_block"
],
"moduleFormConfigs": [
{
"id": 12,
"formIdentifier": "review",
"moduleIdentifier": "catalog",
"isGlobal": false,
"isClosed": false,
"isModerate": false,
"viewOnlyMyData": false,
"commentOnlyMyData": false,
"entityIdentifiers": [
{
"id": "catalog",
"isNested": true
}
],
"nestedEntityIdentifiers": [
"catalog"
]
}
]
}
]
Yanıt şeması
Şema: IProductsEntity[]
id: number
Benzersiz tanımlayıcı.
örnek: 12345
localizeInfos: ILocalizeInfo
Ürünlerin adı, yerelleştirme dikkate alınarak.
örnek:
statusIdentifier: string | null
Ürün sayfası durum tanımlayıcıları (null olabilir).
örnek: "in_stock"
statusLocalizeInfos: any
Dil dikkate alınarak öğe durumu nesnesinin JSON tanımı.
örnek:
attributeSetIdentifier: string | null
Öznitelik seti id'si.
örnek: "set_12345"
position: number
Öğe numarası (sıralama için).
örnek: 1
templateIdentifier: string | null
Bağlı şablonun kullanıcı id'si.
örnek: "template_12345"
shortDescTemplateIdentifier: string | null
Kısa açıklama için bağlı şablonun kullanıcı id'si.
örnek: "short_desc_template_12345"
price: number
Dizinden alınan ürün sayfası fiyatının değeri.
örnek: 150
additional: object
Dizinden ek değer.
örnek:
{
"en": "Stokta",
"de": "Auf Lager"
}
sku: string | null
Ürün SKU'su (Stok Tutma Birimi), null olabilir.
örnek: "SKU_12345"
isSync: boolean
Sayfa dizinleme göstergesi.
örnek: true
attributeValues: AttributeType
Dizinden temsil edilen öznitelik değerleri dizisi.
örnek:
[
{
"id": "color",
"value": "red"
}
]
categories: string[]
Ürün kategorileri.
örnek:
[
1,
2,
3
]
isVisible: boolean
Sayfa görünürlüğü göstergesi.
örnek: true
productPages: any
Ürün sayfaları dizisi veya tek bir ürün sayfası nesnesi.
örnek: []
blocks: string[]
Blok tanımlayıcıları dizisi.
örnek:
[
"block_12345",
"block_67890"
]
isPositionLocked: boolean
Sıralama pozisyonu kilit göstergesi (isteğe bağlı).
örnek: false
relatedIds: number[]
İlgili ürün sayfalarının id'leri.
örnek:
[
12345,
67890
]