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

getProductsEmptyPage

ابحث عن جميع كائنات المنتجات مع الترقيم التي لا تحتوي على فئة.

الوصف

تبحث هذه الطريقة عن كائنات صفحة المنتج مع الترقيم التي لا تحتوي على فئة، بناءً على معلمات الاستعلام المقدمة (userQuery). تُرجع Promise التي تحل إلى كائن IProductsResponse.

Products.getProductsEmptyPage( langCode, userQuery );

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

المخطط

body: كائن
جسم الطلب. الافتراضي:
مثال:

{}

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

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

{
"limit": 30,
"offset": 0,
"sortOrder": "DESC",
"sortKey": "id",
"signPrice": "orders",
"templateMarker": "template_12345",
"statusMarker": "in_stock",
"conditionValue": "new",
"conditionMarker": "eq",
"attributeMarker": "color"
}

userQuery.offset(required): عدد
معلمة للترقيم. الافتراضي: 0.

userQuery.limit(required): عدد
معلمة للترقيم. الافتراضي: 30.

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

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

userQuery.signPrice: سلسلة
علامة تخزين الطلب لتثبيت السعر. إذا تم تعيين المعلمة، يتم تثبيت السعر لفترة معينة.

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

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

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

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

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

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

userQuery.ids: سلسلة
قائمة مفصولة بفواصل من معرفات المنتجات — تُستخدم بواسطة getProductsByIds.
مثال: "1,2,3"

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

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

أمثلة

مثال بسيط

const response = await Products.getProductsEmptyPage();

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

const userQuery = {
"offset": 0,
"limit": 30,
"sortOrder": "DESC",
"sortKey": "id"
};

const response = await Products.getProductsEmptyPage('en_US', userQuery);
استخدم الفلاتر للعثور على منتجات محددة:

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

العلامةالمعنىالمثال
eqيساويstatusId = 1 (نشط فقط)
neqلا يساويrole ≠ "Viewer"
inيحتوي على (واحد من)role in ["Editor", "Manager"]
ninلا يحتوي علىemail not in ["@temp.com"]
exsموجود (له قيمة)Has lastLogin
nexsغير موجودلم يسجل الدخول أبدًا

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

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

{
"total": 15,
"items": [
{
"localizeInfos": {
"title": "Товар"
},
"paymentStages": [
{
"title": "Part A",
"marker": "part_a",
"value": 100
},
{
"title": "Part B",
"marker": "part_b",
"value": 200
}
],
"id": 1764,
"isVisible": true,
"isSync": true,
"price": 0,
"additional": {
"prices": {
"min": 0,
"max": 100
}
},
"blocks": [],
"sku": "0-123",
"productPages": [
{
"id": 8997,
"pageId": 1176,
"productId": 8872
}
],
"rating": {
"votes": 42,
"value": 4.5,
"like": 10,
"dislike": 2,
"method": "weighted"
},
"statusLocalizeInfos": {
"title": "Товар"
},
"templateIdentifier": "my-template",
"shortDescTemplateIdentifier": "my-template-short",
"attributeValues": {
"marker": {
"value": "",
"type": "string",
"position": 1,
"isProductPreview": false,
"isIcon": false,
"additionalFields": {
"marker": {
"type": "string",
"value": "test"
}
}
}
},
"attributeSetIdentifier": "my-set",
"statusIdentifier": "my-status",
"position": 1,
"signedPrice": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...",
"formModuleConfigs": [
{
"id": 1,
"formIdentifier": "reg",
"moduleIdentifier": "user",
"entityIdentifiers": [],
"isGlobal": true,
"isClosed": false,
"viewOnlyMyData": false,
"commentOnlyMyData": false,
"formDataCount": 0,
"entityFormDataCount": {},
"exceptionIds": [
"shop"
],
"nestedEntityIdentifiers": [
"avto-aksessuary",
"fm-moduliatory",
"avtomobilnye-derzhateli",
"videoregistratory-radiolokatory"
],
"ratingCalculation": "average",
"allowHalfRatings": true,
"maxRatingScale": 5,
"isAnonymous": true,
"allowRerating": true,
"isRating": true
}
],
"discountConfig": {
"discounts": [
{
"id": 5,
"identifier": "summer-sale",
"type": "DISCOUNT",
"localizeInfos": {
"title": "Summer Sale"
},
"startDate": "2026-01-01T06:32:19.736Z",
"endDate": "2026-01-28T06:32:22.632Z",
"discountValue": {
"value": 30,
"maxAmount": 0,
"discountType": "FIXED_PRICE",
"applicability": "TO_PRODUCT"
},
"exclusions": [
{
"id": 2
}
],
"position": 3,
"conditionLogic": "OR",
"gifts": [
{
"id": 3,
"localizeInfos": {
"title": "hhh222"
},
"attributeSetIdentifier": "attr-set-1",
"statusIdentifier": null,
"statusLocalizeInfos": {},
"templateIdentifier": null,
"price": 90,
"sku": null,
"attributeValues": {
"price1": {
"type": "integer",
"value": "90",
"isIcon": false,
"position": 0,
"additionalFields": [],
"isProductPreview": false
}
},
"isVisible": true
}
],
"conditions": [
{
"conditionType": "PRODUCT",
"entityIds": [
{
"id": 4,
"isNested": false
},
{
"isNested": false
}
],
"value": null
},
{
"conditionType": "ATTRIBUTE",
"entityIds": [
{
"isNested": false
}
],
"value": {
"value": "100",
"condition": "eq"
}
}
]
}
],
"discountPrice": 90,
"settings": {
"allowStacking": true,
"maxDiscountValue": 30,
"allowGiftStacking": false
}
}
},
{
"localizeInfos": {
"title": "Товар"
},
"paymentStages": [
{
"title": "Part A",
"marker": "part_a",
"value": 100
},
{
"title": "Part B",
"marker": "part_b",
"value": 200
}
],
"id": 1764,
"isVisible": true,
"isSync": true,
"price": 0,
"additional": {
"prices": {
"min": 0,
"max": 100
}
},
"blocks": [],
"sku": "0-123",
"productPages": [
{
"id": 8997,
"pageId": 1176,
"productId": 8872
}
],
"rating": {
"votes": 42,
"value": 4.5,
"like": 10,
"dislike": 2,
"method": "weighted"
},
"statusLocalizeInfos": {
"title": "Товар"
},
"templateIdentifier": "my-template",
"shortDescTemplateIdentifier": "my-template-short",
"attributeValues": {
"marker": {
"value": "",
"type": "string",
"position": 1,
"isProductPreview": false,
"isIcon": false,
"additionalFields": {
"marker": {
"type": "string",
"value": "test"
}
}
}
},
"attributeSetIdentifier": "my-set",
"statusIdentifier": "my-status",
"position": 1,
"signedPrice": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...",
"formModuleConfigs": [
{
"id": 1,
"formIdentifier": "reg",
"moduleIdentifier": "user",
"entityIdentifiers": [],
"isGlobal": true,
"isClosed": false,
"viewOnlyMyData": false,
"commentOnlyMyData": false,
"formDataCount": 0,
"entityFormDataCount": {},
"exceptionIds": [
"shop"
],
"nestedEntityIdentifiers": [
"avto-aksessuary",
"fm-moduliatory",
"avtomobilnye-derzhateli",
"videoregistratory-radiolokatory"
],
"ratingCalculation": "average",
"allowHalfRatings": true,
"maxRatingScale": 5,
"isAnonymous": true,
"allowRerating": true,
"isRating": true
}
],
"discountConfig": {
"discounts": [
{
"id": 5,
"identifier": "summer-sale",
"type": "DISCOUNT",
"localizeInfos": {
"title": "Summer Sale"
},
"startDate": "2026-01-01T06:32:19.736Z",
"endDate": "2026-01-28T06:32:22.632Z",
"discountValue": {
"value": 30,
"maxAmount": 0,
"discountType": "FIXED_PRICE",
"applicability": "TO_PRODUCT"
},
"exclusions": [
{
"id": 2
}
],
"position": 3,
"conditionLogic": "OR",
"gifts": [
{
"id": 3,
"localizeInfos": {
"title": "hhh222"
},
"attributeSetIdentifier": "attr-set-1",
"statusIdentifier": null,
"statusLocalizeInfos": {},
"templateIdentifier": null,
"price": 90,
"sku": null,
"attributeValues": {
"price1": {
"type": "integer",
"value": "90",
"isIcon": false,
"position": 0,
"additionalFields": [],
"isProductPreview": false
}
},
"isVisible": true
}
],
"conditions": [
{
"conditionType": "PRODUCT",
"entityIds": [
{
"id": 4,
"isNested": false
},
{
"isNested": false
}
],
"value": null
},
{
"conditionType": "ATTRIBUTE",
"entityIds": [
{
"isNested": false
}
],
"value": {
"value": "100",
"condition": "eq"
}
}
]
}
],
"discountPrice": 90,
"settings": {
"allowStacking": true,
"maxDiscountValue": 30,
"allowGiftStacking": false
}
}
}
]
}

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

المخطط: IProductsResponse

attrValue: سلسلة
قيمة الخاصية.

items: IProductsEntity[]
مصفوفة من كائنات المنتجات.

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

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

{}

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

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

{ "title": "Sale" }

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

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

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

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

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

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

items.isSync: بولياني
إشارة إلى فهرسة الصفحة.
مثال: true

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

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

items.categories: سلسلة[]
فئات المنتجات.
مثال:

[
1,
2,
3
]

items.isVisible: بولياني
علامة رؤية الصفحة.
مثال: true

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

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

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

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

[
12345,
67890
]

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

items.distance: عدد
مسافة الصلة في البحث الدلالي. تظهر فقط في نتائج البحث الدلالي.
مثال: 0.42

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

{}

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

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

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

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

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

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

[
"block_12345",
"block_67890"
]

productIds: سلسلة[]
مصفوفة من معرفات المنتجات.

total: عدد
إجمالي العدد.

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