getProductsPriceByPageUrl
ابحث عن معلومات حول المنتجات والأسعار لفئة محددة.
الوصف
تبحث هذه الطريقة عن معلومات حول المنتجات والأسعار للفئة المحددة، بناءً على معلمات الاستعلام المقدمة (userQuery). تُرجع Promise التي تحل إلى كائن IProductsInfo.
Products.getProductsPriceByPageUrl(
url,
langCode,
userQuery
);
مخطط المعلمات
المخطط
url: string
رابط الصفحة
مثال: "23-laminat-floorwood-maxima"
langCode: string
رمز اللغة. الافتراضي: "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): 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.signPrice: string
علامة السعر. الافتراضي: 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"
userQuery.langCode: string
رمز اللغة. الافتراضي: "en_US".
userQuery.ids: string
قائمة مفصولة بفواصل من معرفات المنتجات — تُستخدم بواسطة getProductsByIds.
مثال: "1,2,3"
بشكل افتراضي، يمكنك استرداد 10 كائنات. وذلك بسبب حد السجلات في إعدادات أذونات الوحدة.
لعمل التصفح بشكل صحيح، تحتاج إلى تكوين أذونات الوحدة وفقًا لاحتياجاتك في القسم المقابل.
أمثلة
مثال بسيط
const response = await Products.getProductsPriceByPageUrl('catalog');
مثال مع الخصائص
const userQuery = {
"offset": 0,
"limit": 30,
"statusMarker": "in_stock",
"conditionValue": "new",
"conditionMarker": "equals",
"attributeMarker": "color",
"sortOrder": "DESC",
"sortKey": "id",
};
const response = await Products.getProductsPriceByPageUrl('catalog', '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: القيمة التي سيتم المقارنة بها.
استجابة المثال
{
"items": [
{
"id": 2957,
"price": 150
},
{
"id": 2954,
"price": 51
},
{
"id": 2955,
"price": 0
}
],
"total": 3
}
مخطط الاستجابة
المخطط: IProductsInfo
total: number
إجمالي عدد المنتجات التي تم العثور عليها.
مثال: 100
items: IProductInfo[]
مصفوفة من كائنات معلومات المنتج.
مثال:
[
{
"id": 12345,
"price": 150
},
{
"id": 67890,
"price": 200
}
]
items.id: number
المعرف الفريد للمنتج.
مثال: 12345
items.price: number
سعر المنتج.
مثال: 150