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

getProductById

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

الوصف

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

Products.getProductById(

id*, langCode, isNormalized

);

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

المخطط

id(مطلوب): number
معرف المنتج
مثال: 12345

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

isNormalized: boolean
إذا كان صحيحًا، سيتم تطبيع كائن المنتج

أمثلة

مثال بسيط

const response = await Products.getProductById(1);

مثال مع السمات

const response = await Products.getProductById(1, 'en_US');

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

{
"id": 2954,
"attributeSetIdentifier": "products",
"localizeInfos": {
"title": "Box"
},
"statusLocalizeInfos": {
"title": "Sale"
},
"isVisible": true,
"statusIdentifier": "sale",
"position": 1,
"templateIdentifier": null,
"shortDescTemplateIdentifier": "product_preview",
"price": 51,
"additional": {
"prices": {
"min": 51,
"max": 180
}
},
"sku": null,
"isSync": true,
"categories": [
"catalog"
],
"paymentStages": null,
"rating": {},
"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": 241636,
"filename": "files/project/product/2954/image/7e0a6a70-a23d-410f-8b6a-f8b4f7483244.png",
"contentType": "image/png",
"downloadLink": "https://your-project.oneentry.cloud/cloud-static/files/project/product/2954/image/7e0a6a70-a23d-410f-8b6a-f8b4f7483244.png"
},
"isIcon": false,
"position": 3,
"additionalFields": {},
"isProductPreview": false
}
},
"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": 582,
"ratingCalculation": "average",
"allowHalfRatings": null,
"maxRatingScale": null,
"isAnonymous": null,
"allowRerating": null,
"isRating": null,
"entityFormDataCount": {
"2954": 582
},
"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 — قم بتوصيل عنوان مشروعك ورمز التطبيق عند الزيارة الأولى، ثم افتح: