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

getProductsByIds

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

الوصف

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

Products.getProductsByIds( ids, langCode, userQuery );

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

المخطط

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

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

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

{
"limit": 30,
"offset": 0,
"signPrice": "orders"
}

userQuery.signPrice: string
علامة تخزين الطلب لتثبيت السعر.

بشكل افتراضي، يمكنك استرجاع 10 كائنات. وذلك بسبب حد السجلات في إعدادات أذونات الوحدة.
لعمل الترقيم بشكل صحيح، تحتاج إلى تكوين أذونات الوحدة وفقًا لاحتياجاتك في القسم المقابل.

💲 signPrice يقفل السعر المعاد لفترة محدودة — قم بتعيينه إلى علامة تخزين الطلب الخاصة بك. انظر تثبيت السعر (signPrice).

أمثلة

مثال بسيط

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);
استخدم الفلاتر للعثور على منتجات محددة:

attributeMarker: المعرف النصي للسمة المفهرسة التي يتم تصفية القيم بناءً عليها. conditionMarker: نوع الشرط الذي سيتم تطبيقه على قيمة السمة.

العلامةالمعنىالمثال
eqيساويstatusId = 1 (نشط فقط)
neqلا يساويcategory ≠ "أرشيف"
inيحتوي على (واحد من)category in ["إلكترونيات", "كتب"]
ninلا يحتوي علىbrand not in ["علامة_مزيفة"]
exsموجود (له قيمة)له وصف
nexsغير موجودلا توجد صورة
patيتطابق مع النمطtitle matches "جاكيت"
sameيتطابق مع القيمة بالضبطsku هو بالضبط "ABC-123"
same_partيتطابق مع جزء من القيمة بالضبطجزء من sku هو بالضبط "ABC"

conditionValue: القيمة التي سيتم المقارنة بها.

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

[
{
"id": 2954,
"localizeInfos": {
"title": "Box"
},
"isVisible": true,
"isSync": true,
"sku": null,
"price": 51,
"additional": {
"prices": {
"min": 51,
"max": 180
}
},
"categories": [
"catalog"
],
"statusIdentifier": "sale",
"statusLocalizeInfos": {
"title": "Sale"
},
"templateIdentifier": null,
"shortDescTemplateIdentifier": "product_preview",
"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": {
"size": 742690,
"filename": "files/project/product/2954/image/48853cbf-4462-42c6-8b99-d14f721c21a2.jpeg",
"contentType": "image/jpeg",
"previewLink": {
"default": [
"data:image/webp;base64,UklGRmwAAABXRUJQVlA4IGAAAADQAQCdASoQABAABUB8JbACdACZZ3P8AAD+wGsUXBs/r069WpdrcuaTNfVxqWIetuaIdIvOMkSp9iJRxE+KhA2YHbrVehhMRj/j5+DUdjWn1v5YtZ7vw0IgPi9R5vkAAAA=",
"https://your-project.oneentry.cloud/cloud-static/files/project/product/2954/image/48853cbf-4462-42c6-8b99-d14f721c21a2.preview.default.jpeg"
]
},
"downloadLink": "https://your-project.oneentry.cloud/cloud-static/files/project/product/2954/image/48853cbf-4462-42c6-8b99-d14f721c21a2.jpeg",
"defaultPreview": "default"
},
"isIcon": false,
"position": 3,
"additionalFields": {},
"isProductPreview": true
}
},
"attributeSetIdentifier": "products",
"isPositionLocked": false,
"position": 1,
"rating": {},
"paymentStages": null,
"productPages": [
{
"id": 2847,
"pageId": 10,
"productId": 2954,
"positionId": 3190,
"categoryPath": "catalog"
}
],
"blocks": [
"product_block",
"test",
"similar"
],
"moduleFormConfigs": [
{
"id": 12,
"formIdentifier": "review",
"moduleIdentifier": "catalog",
"isGlobal": false,
"isClosed": false,
"isModerate": false,
"viewOnlyMyData": false,
"commentOnlyMyData": false,
"entityIdentifiers": [
{
"id": "catalog",
"isNested": true
}
],
"formDataCount": 688,
"ratingCalculation": "average",
"allowHalfRatings": null,
"maxRatingScale": null,
"isAnonymous": null,
"allowRerating": null,
"isRating": null,
"entityFormDataCount": {
"2954": 688
},
"nestedEntityIdentifiers": [
"catalog"
],
"exceptionIds": []
}
],
"discountConfig": {}
},
{
"id": 2955,
"localizeInfos": {
"title": "Product"
},
"isVisible": true,
"isSync": true,
"sku": null,
"price": 150,
"additional": {
"prices": {
"min": 51,
"max": 180
}
},
"categories": [
"catalog"
],
"statusIdentifier": "sale",
"statusLocalizeInfos": {
"title": "Sale"
},
"templateIdentifier": null,
"shortDescTemplateIdentifier": null,
"attributeValues": {
"p": {
"type": "float",
"value": 150,
"isIcon": false,
"position": 0,
"additionalFields": {},
"isProductPreview": false
},
"p1": {
"type": "float",
"value": 50,
"isIcon": false,
"position": 1,
"additionalFields": {},
"isProductPreview": false
},
"p2": {
"type": "float",
"value": 50,
"isIcon": false,
"position": 2,
"additionalFields": {},
"isProductPreview": false
},
"p3": {
"type": "float",
"value": 50,
"isIcon": false,
"position": 3,
"additionalFields": {},
"isProductPreview": false
},
"currency": {
"type": "string",
"value": "USD",
"isIcon": false,
"position": 4,
"additionalFields": {},
"isProductPreview": false
}
},
"attributeSetIdentifier": "test",
"isPositionLocked": false,
"position": 2,
"rating": {},
"paymentStages": [
{
"title": "p1",
"value": 50,
"marker": "p1"
},
{
"title": "p2",
"value": 50,
"marker": "p2"
},
{
"title": "p3",
"value": 50,
"marker": "p3"
}
],
"productPages": [
{
"id": 2848,
"pageId": 10,
"productId": 2955,
"positionId": 3191,
"categoryPath": "catalog"
}
],
"blocks": [
"product_block",
"test",
"similar"
],
"moduleFormConfigs": [
{
"id": 12,
"formIdentifier": "review",
"moduleIdentifier": "catalog",
"isGlobal": false,
"isClosed": false,
"isModerate": false,
"viewOnlyMyData": false,
"commentOnlyMyData": false,
"entityIdentifiers": [
{
"id": "catalog",
"isNested": true
}
],
"formDataCount": 688,
"ratingCalculation": "average",
"allowHalfRatings": null,
"maxRatingScale": null,
"isAnonymous": null,
"allowRerating": null,
"isRating": null,
"entityFormDataCount": {
"2954": 688
},
"nestedEntityIdentifiers": [
"catalog"
],
"exceptionIds": []
}
],
"discountConfig": {}
}
]

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

المخطط: IProductsEntity[]

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

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

{}

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

statusLocalizeInfos: ILocalizeInfo
اسم الحالة المحلي للمنتج.
مثال:

{ "title": "Sale" }

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

position: number
رقم العنصر (للتصنيف).
مثال: 1

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

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

{
"prices": {
"min": 5,
"max": 150
}
}

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

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

attributeValues: IAttributeValues
مصفوفة من قيم السمات من الفهرس، ممثلة.
مثال:

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

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

[
1,
2,
3
]

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

moduleFormConfigs: Array<IFormConfig>
إعدادات نماذج الوحدة (اختياري).

rating: IRating
بيانات التقييم.

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

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

[
12345,
67890
]

paymentStages: unknown
بيانات مراحل الدفع (قد تكون null).
مثال: null

distance: number
مسافة ملاءمة البحث (الدلالي). تظهر فقط في نتائج البحث الدلالي.
مثال: 0.42

discountConfig: Record<string, unknown>
كائن إعدادات الخصم.
مثال:

{}

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

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

signedPrice: string
السعر الموقّع للمنتج يتم الحصول عليه مع بيانات المنتج عند تعيين signPrice.
انظر: سعر المنتج الثابت
مثال: "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9..."

productPages: IProductPageRef[]
مصفوفة من مراجع صفحات المنتجات تربط المنتج بصفحاتها.
مثال:

[
{
"id": 16,
"pageId": 4,
"productId": 15,
"positionId": 244,
"categoryPath": "products"
}
]

productPages.id: number
المعرف الفريد لسجل ارتباط المنتج بالصفحة.
مثال: 16

productPages.pageId: number
معرف الصفحة التي يرتبط بها المنتج.
مثال: 4

productPages.productId: number
معرف المنتج.
مثال: 15

productPages.positionId: number
معرف موضع التصنيف داخل الصفحة.
مثال: 244

productPages.categoryPath: string
مسار الفئة للصفحة التي ينتمي إليها المنتج.
مثال: "products"

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

[
"block_12345",
"block_67890"
]

🔒 signedPrice هو الرمز الموقّع الذي يحمل السعر المقفل — قم بإعادته عند إنشاء طلب. انظر سعر المنتج الثابت (signedPrice).


أمثلة الاستخدام

خطوات تفصيلية في الوثائق:

جربها مباشرة

قم بتشغيل هذه الطريقة بشكل تفاعلي في JS SDK sandbox — قم بتوصيل عنوان مشروعك ورمز التطبيق عند الزيارة الأولى، ثم افتح: