انتقل إلى المحتوى الرئيسي

getProductsByIds

الحصول على عدة منتجات من خلال معرفاتها.

الوصف

تسترجع هذه الطريقة كائنات المنتجات بناءً على معرفاتها (ids) من واجهة برمجة التطبيقات (API). تعيد وعدًا (Promise) يتم حله إلى كائنات IProductsEntity للمنتج.

Products.getProductsByIds( ids, langCode, userQuery );

مخطط المعلمات

المخطط

ids: string
معرفات صفحات المنتجات التي يجب العثور على العلاقات لها
مثال: "12345,67890"

langCode: string
رمز اللغة. الافتراضي "en_US"

userQuery: IProductsQuery
معلمات استعلام اختيارية
مثال:

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

userQuery.offset(required): number
معلمة للتصفح. الافتراضي: 0.

userQuery.limit(required): number
معلمة للتصفح. الافتراضي: 30.

userQuery.sortOrder(required): string
ترتيب الفرز "DESC" | "ASC". الافتراضي: "DESC".

userQuery.sortKey(required): string
الحقل المستخدم في الفرز (الافتراضي - null). القيم الممكنة: "id"، "position"، "title"، "date"، "price". الافتراضي: null.

userQuery.templateMarker: string | null
علامة قالب صفحة المنتج، الافتراضي null.
مثال: "template_12345"

userQuery.statusMarker: string | null
علامة حالة صفحة المنتج، الافتراضي null.
مثال: "in_stock"

userQuery.conditionValue: string | null
القيمة التي يتم البحث عنها، الافتراضي null.
مثال: "new"

userQuery.attributeMarker: string | null
معرف النص الخاص بالخاصية المفهرسة التي يتم تصفية القيم بناءً عليها، الافتراضي null.
مثال: "color"

userQuery.conditionMarker: string | null
علامة شرط الفلتر الذي يتم تصفية القيم بناءً عليه، الافتراضي null.
مثال: "equals"

أمثلة

مثال بسيط

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

مثال مع الخصائص

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

مثال على الاستجابة

[
{
"id": 2954,
"localizeInfos": {
"title": "صندوق"
},
"statusIdentifier": "sale",
"statusLocalizeInfos": {
"title": "بيع"
},
"attributeSetIdentifier": "products",
"position": 2,
"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,
"productPages": [
{
"id": 2847,
"pageId": 10,
"productId": 2954,
"positionId": 3190,
"categoryPath": "catalog"
}
],
"blocks": [
"product_block",
"product_block"
]
},
{
"id": 2955,
"localizeInfos": {
"title": "منتج"
},
"statusIdentifier": "sale",
"statusLocalizeInfos": {
"title": "بيع"
},
"attributeSetIdentifier": null,
"position": 1,
"templateIdentifier": null,
"shortDescTemplateIdentifier": null,
"price": null,
"additional": {
"prices": {
"min": 50,
"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"
]
}
]

مخطط الاستجابة

المخطط: IProductsEntity[]

id: number
المعرف الفريد.
مثال: 12345

localizeInfos: ILocalizeInfo
اسم المنتجات، مع الأخذ في الاعتبار التوطين.

statusIdentifier: string | null
معرفات حالة صفحة المنتج (قد تكون null).
مثال: "in_stock"

statusLocalizeInfos: any
وصف JSON لكائن حالة العنصر، مع الأخذ في الاعتبار اللغة.

attributeSetIdentifier: string | null
مجموعة معرفات الخصائص.
مثال: "set_12345"

position: number
رقم العنصر (لأغراض الفرز).
مثال: 1

templateIdentifier: string | null
معرف المستخدم للقالب المرتبط.
مثال: "template_12345"

shortDescTemplateIdentifier: string | null
معرف المستخدم للقالب المرتبط للوصف القصير.
مثال: "short_desc_template_12345"

price: number
قيمة سعر صفحة المنتج المأخوذة من الفهرس.
مثال: 150

additional: object
قيمة إضافية من الفهرس.
مثال:

{
"en": "In Stock",
"de": "Auf Lager"
}

sku: string | null
SKU المنتج (وحدة حفظ المخزون)، قد تكون null.
مثال: "SKU_12345"

isSync: boolean
إشارة إلى فهرسة الصفحة.
مثال: true

attributeValues: AttributeType
مصفوفة من قيم الخصائص من الفهرس، ممثلة.
مثال:

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

categories: string[]
فئات المنتجات.
مثال:

[
1,
2,
3
]

isVisible: boolean
علامة رؤية الصفحة.
مثال: true

productPages: any[]
مصفوفة من صفحات المنتجات أو كائن صفحة منتج واحد.

blocks: string[]
مصفوفة من معرفات الكتل.
مثال:

[
"block_12345",
"block_67890"
]

isPositionLocked: boolean
مؤشر قفل موضع الفرز (اختياري).
مثال: false

relatedIds: number[]
معرفات صفحات المنتجات ذات الصلة.
مثال:

[
12345,
67890
]