Ana içeriğe geç

getProductsByIds

Birden fazla ürünü kimlikleriyle almak.

Açıklama

Bu yöntem, API'den kimliklerine (ids) dayanarak ürün nesnelerini alır. Ürün için bir IProductsEntity nesneleri döndüren bir Promise döner.

Products.getProductsByIds( ids, langCode, userQuery );

Parametreler şeması

Şema

ids: string
İlişkileri bulmak için ürün sayfası kimlikleri
örnek: "12345,67890"

langCode: string
Dil kodu. Varsayılan "en_US"

userQuery: IProductsQuery
İsteğe bağlı sorgu parametreleri
örnek:

{
"limit": 30,
"offset": 0,
"sortOrder": "DESC",
"sortKey": "id",
"statusId": 123,
"statusMarker": "in_stock",
"conditionValue": "new",
"conditionMarker": "equals",
"attributeMarker": "color"
}

userQuery.offset(required): number
Sayfalandırma için parametre. Varsayılan: 0.

userQuery.limit(required): number
Sayfalandırma için parametre. Varsayılan: 30.

userQuery.sortOrder(required): string
Sıralama düzeni "DESC" | "ASC". Varsayılan: "DESC".

userQuery.sortKey(required): string
Sıralama için alan (varsayılan - null). Olası değerler: "id", "position", "title", "date", "price". Varsayılan: null.

userQuery.templateMarker: string | null
Ürün sayfası şablon işareti, varsayılan null.
örnek: "template_12345"

userQuery.statusMarker: string | null
Ürün sayfası durum işareti, varsayılan null.
örnek: "in_stock"

userQuery.conditionValue: string | null
Aranan değer, varsayılan null.
örnek: "new"

userQuery.attributeMarker: string | null
Değerlerin filtrelendiği dizinlenmiş niteliğin metin tanımlayıcısı, varsayılan null.
örnek: "color"

userQuery.conditionMarker: string | null
Değerlerin filtrelendiği filtre koşulunun işareti, varsayılan null.
örnek: "equals"

Örnekler

Minimal örnek

const response = await Products.getProductsByIds('1, 5, 8');

Nitelikler ile örnek

const userQuery = {
"offset": 0,
"limit": 30,
"sortOrder": "DESC",
"sortKey": "id"
};
const response = await Products.getProductsByIds('1, 5, 8', 'en_US', userQuery);

Örnek yanıt

[
{
"id": 2954,
"localizeInfos": {
"title": "Kutu"
},
"statusIdentifier": "sale",
"statusLocalizeInfos": {
"title": "İndirim"
},
"attributeSetIdentifier": "products",
"position": 2,
"templateIdentifier": null,
"shortDescTemplateIdentifier": "product_preview",
"price": 51,
"additional": {
"prices": {
"min": 51,
"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": 51,
"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,
"productPages": [
{
"id": 2847,
"pageId": 10,
"productId": 2954,
"positionId": 3190,
"categoryPath": "catalog"
}
],
"blocks": [
"product_block",
"product_block"
]
},
{
"id": 2955,
"localizeInfos": {
"title": "Ürün"
},
"statusIdentifier": "sale",
"statusLocalizeInfos": {
"title": "İndirim"
},
"attributeSetIdentifier": null,
"position": 1,
"templateIdentifier": null,
"shortDescTemplateIdentifier": null,
"price": null,
"additional": {
"prices": {
"min": 51,
"max": 150
}
},
"sku": null,
"isSync": false,
"attributeValues": {},
"categories": [
"catalog"
],
"isVisible": true,
"productPages": [
{
"id": 2848,
"pageId": 10,
"productId": 2955,
"positionId": 3191,
"categoryPath": "catalog"
}
],
"blocks": [
"product_block",
"product_block"
]
}
]

Yanıt şeması

Şema: IProductsEntity[]

id: number
Benzersiz tanımlayıcı.
örnek: 12345

localizeInfos: ILocalizeInfo
Ürünlerin adı, yerelleştirmeyi dikkate alarak.

statusIdentifier: string | null
Ürün sayfası durum tanımlayıcıları (null olabilir).
örnek: "in_stock"

statusLocalizeInfos: any
Dil dikkate alınarak öğe durum nesnesinin JSON tanımı.

attributeSetIdentifier: string | null
Niteliklerin 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
İndeksten alınan ürün sayfası fiyatının değeri.
örnek: 150

additional: object
İndeksten 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 indekslemesi göstergesi.
örnek: true

attributeValues: AttributeType
İndeksten temsil edilen nitelik değerleri dizisi.
örnek:

[
{
"id": "color",
"value": "red"
}
]

categories: string[]
Ürün kategorileri.
örnek:

[
1,
2,
3
]

isVisible: boolean
Sayfa görünürlüğü işareti.
örnek: true

productPages: any[]
Ürün sayfalarının dizisi veya tek bir ürün sayfası nesnesi.

blocks: string[]
Blok tanımlayıcılarının 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
]