getProductsEmptyPage
ابحث عن جميع كائنات المنتجات مع الترقيم التي لا تحتوي على فئة.
الوصف
تبحث هذه الطريقة عن كائنات صفحة المنتج مع الترقيم التي لا تحتوي على فئة، بناءً على معلمات الاستعلام المقدمة (userQuery). تُرجع Promise التي تحل إلى كائن IProductsResponse.
Products.getProductsEmptyPage(
langCode,
userQuery
);
مخطط المعلمات
المخطط
body: كائن
جسم الطلب. الافتراضي:
مثال:
{}
langCode: سلسلة
رمز اللغة. الافتراضي: "en_US"
مثال: "en_US"
userQuery: IProductsQueryBase
مجموعة معلمات الاستعلام الاختيارية
مثال:
{
"limit": 30,
"offset": 0,
"sortOrder": "DESC",
"sortKey": "id",
"signPrice": "orders"
}
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: سلسلة
علامة تخزين الطلب لتثبيت السعر. إذا تم تعيين المعلمة، يتم تثبيت السعر لفترة معينة.
انظر: تثبيت السعر
بشكل افتراضي، يمكنك استرداد 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 | غير موجود | لم يسجل الدخول أبدًا |
| pat | يتطابق مع النمط | المعرف يتطابق مع "man" |
| same | يتطابق مع القيمة بالضبط | المعرف هو بالضبط "admin1" |
| same_part | يتطابق مع جزء من القيمة بالضبط | جزء من المعرف هو بالضبط "adm" |
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: boolean
إشارة إلى فهرسة الصفحة.
مثال: true
items.attributeValues: IAttributeValues
مصفوفة من قيم السمات من الفهرس، ممثلة.
مثال:
[
{
"id": "color",
"value": "red"
}
]
items.categories: سلسلة[]
فئات المنتجات.
مثال:
[
1,
2,
3
]
items.isVisible: boolean
علامة رؤية الصفحة.
مثال: true
items.moduleFormConfigs: Array<IFormConfig>
إعدادات نماذج الوحدة (اختياري).
items.rating: IRating
بيانات التقييم.
items.isPositionLocked: boolean
مؤشر قفل موضع الفرز (اختياري).
مثال: 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).