getBlocks
الحصول على جميع كائنات الكتل.
الوصف
ترجع هذه الطريقة مصفوفة من جميع كائنات الكتل والمجموع الكلي. إنها ترجع Promise يتم حلها إلى كائن IBlocksResponse.
Blocks.getBlocks(
type*,
langCode,
offset,
limit
);
مخطط المعاملات
المخطط
type(مطلوب): BlockType
القيم المتاحة: "product" | "error_page" | "catalog_page" | "product_preview" | "similar_products_block" | "product_block" | "form" | "common_page" | "common_block" | "order" | "service" | "none"
مثال: 'product'
langCode: string
رمز اللغة. الافتراضي: "en_US"
مثال: "en_US"
offset: number
معامل للتصفح. الافتراضي: 0
مثال: 0
limit: number
معامل للتصفح. الافتراضي: 30
مثال: 30
بشكل افتراضي، يمكنك استرداد 10 كائنات. وذلك بسبب حد السجلات في إعدادات أذونات الوحدة.
لعمل التصفح بشكل صحيح، تحتاج إلى تكوين أذونات الوحدة وفقًا لاحتياجاتك في القسم المقابل.
أمثلة
مثال بسيط
const response = await Blocks.getBlocks('forTextBlock');
مثال مع السمات
const response = await Blocks.getBlocks('forTextBlock', 'en_US', 0, 30);
مثال على الاستجابة
{
"items": [
{
"id": 3,
"localizeInfos": {
"title": "Block"
},
"version": 0,
"position": 1,
"identifier": "block",
"type": "common_block",
"templateIdentifier": null,
"isVisible": true,
"attributeValues": {}
},
{
"id": 4,
"localizeInfos": {
"title": "test"
},
"version": 31,
"position": 2,
"identifier": "test",
"type": "common_block",
"templateIdentifier": null,
"isVisible": true,
"attributeValues": {
"block-text": {
"type": "string",
"value": "some text",
"isIcon": false,
"position": 0,
"additionalFields": {},
"isProductPreview": false
},
"interval": {
"type": "timeInterval",
"value": [
{
"values": [
{
"id": "bbc82c9f-1bc4-4c86-b83c-c062016eb7cb",
"dates": [
"2025-04-14T00:00:00.000Z",
"2025-04-14T00:00:00.000Z"
],
"times": [
[
{
"hours": 9,
"minutes": 0
},
{
"hours": 10,
"minutes": 0
}
],
[
{
"hours": 10,
"minutes": 0
},
{
"hours": 11,
"minutes": 0
}
],
[
{
"hours": 11,
"minutes": 0
},
{
"hours": 12,
"minutes": 0
}
],
"..."
],
"intervals": [],
"exceptions": [],
"intervalId": "c6466cd8-c55d-4583-97c5-42b684210f12",
"inEveryWeek": true,
"inEveryMonth": true,
"timeIntervals": [
[
"2025-04-07T09:00:00.000Z",
"2025-04-07T10:00:00.000Z"
],
[
"2025-04-07T10:00:00.000Z",
"2025-04-07T11:00:00.000Z"
],
[
"2025-04-07T11:00:00.000Z",
"2025-04-07T12:00:00.000Z"
],
"..."
]
}
],
"intervalId": "c6466cd8-c55d-4583-97c5-42b684210f12"
}
],
"isIcon": false,
"position": 1,
"additionalFields": {},
"isProductPreview": false
}
}
}
],
"total": 2
}
مخطط الاستجابة
المخطط: IBlocksResponse
total: number
إجمالي عدد السجلات الموجودة.
مثال: 100
items: IBlockEntity[]
مصفوفة من كائنات الكتل.
مثال:
[
{
"attributeValues": [],
"id": 1,
"identifier": "block1",
"isVisible": true,
"localizeInfos": {
"key": "value"
},
"position": 1,
"templateIdentifier": null,
"type": "product",
"version": 1,
"countElementsPerRow": 3,
"quantity": 9,
"similarProducts": {
"total": 0,
"items": []
},
"products": [
{
"id": 1,
"name": "Product 1"
},
{
"id": 2,
"name": "Product 2"
}
]
}
]
items.attributeValues: IAttributeValues
خريطة لقيم السمات مفاتيحها بواسطة العلامة؛ كائن فارغ عند عدم وجودها.
مثال:
{
"block-text": {
"type": "string",
"value": "some text",
"isIcon": false,
"position": 0,
"additionalFields": [],
"isProductPreview": false
}
}
items.id: number
معرف فريد للكتلة.
مثال: 1234
items.localizeInfos: ILocalizeInfo
معلومات التوطين للكتلة.
مثال:
{
"key": "value"
}
items.version: number
إصدار كائن الكتلة.
مثال: 1
items.identifier: string
معرف سلسلة فريد للكتلة.
مثال: "block1"
items.type: BlockType
نوع الكتلة.
مثال: "product"
items.position: number
موضع الكتلة للفرز.
مثال: 1
items.templateIdentifier: string | null
معرف القالب المستخدم بواسطة الكتلة، أو null إذا لم يكن ذلك مناسبًا.
مثال: "template1"
items.isVisible: boolean
تشير إلى ما إذا كانت الكتلة مرئية.
مثال: true
items.countElementsPerRow: number
عدد العناصر المعروضة في كل صف في الكتلة، إذا كان ذلك مناسبًا.
مثال: 3
items.quantity: number
كمية العناصر في الكتلة، إذا كان ذلك مناسبًا.
مثال: 5
items.similarProducts: IProductsResponse
استجابة تحتوي على منتجات مشابهة مرتبطة بالكتلة.
مثال:
{
"total": 10,
"items": []
}
similarProducts.total: number
إجمالي عدد المنتجات الموجودة.
مثال: 100
similarProducts.items: IProductsEntity[]
مصفوفة من كائنات المنتجات.
مثال:
[
{
"id": 12345,
"title": "Product 1"
},
{
"id": 67890,
"title": "Product 2"
}
]
items.id: number
المعرف الفريد.
مثال: 12345
items.localizeInfos: ILocalizeInfo
اسم المنتجات، مع الأخذ في الاعتبار التوطين.
مثال:
items.statusIdentifier: string | null
معرفات حالة صفحة المنتج (قد تكون null).
مثال: "in_stock"
items.statusLocalizeInfos: ILocalizeInfo
اسم الحالة المحلي للمنتج.
مثال: { "title": "Sale" }
items.attributeSetIdentifier: string | null
مجموعة معرفات السمات.
مثال: "set_12345"
items.position: number
رقم العنصر (للفرز).
مثال: 1
items.price: number | null
قيمة سعر صفحة المنتج المأخوذة من الفهرس.
مثال: 150.00
items.additional: object
قيمة إضافية من الفهرس.
مثال: { prices: { min: 5 max: 150 } }
items.sku: string | null
SKU المنتج (وحدة حفظ المخزون)، قد تكون null.
مثال: "SKU_12345"
items.isSync: boolean
إشارة إلى فهرسة الصفحة.
مثال: true
items.attributeValues: AttributeType
مصفوفة من قيم السمات من الفهرس، ممثلة.
مثال:
[
{
"id": "color",
"value": "red"
}
]
items.categories: string[]
فئات المنتجات.
مثال:
[
1,
2,
3
]
items.isVisible: boolean
علامة على رؤية الصفحة.
مثال: true
items.moduleFormConfigs: Array<IFormConfig>
إعدادات نماذج الوحدة (اختياري).
items.rating: IRating
بيانات التقييم.
items.isPositionLocked: boolean
مؤشر قفل موضع الفرز (اختياري).
مثال: false
items.relatedIds: number[]
معرفات صفحات المنتجات ذات الصلة.
مثال:
[
12345,
67890
]
items.paymentStages: unknown
بيانات مراحل الدفع (قد تكون null).
مثال: null
items.discountConfig: Record<string, unknown>
كائن إعدادات الخصم.
مثال:
items.templateIdentifier: string | null
معرف المستخدم للقالب المرتبط.
مثال: "template_12345"
items.shortDescTemplateIdentifier: string | null
معرف المستخدم للقالب المرتبط لوصف قصير.
مثال: "short_desc_template_12345"
items.signedPrice: string
علامة السعر.
items.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"
items.blocks: string[]
مصفوفة من معرفات الكتل.
مثال:
[
"block_12345",
"block_67890"
]
items.products: IProductsEntity[]
مصفوفة من كائنات المنتجات المرتبطة بالكتلة.
مثال:
[
{
"id": 1,
"name": "Product 1"
},
{
"id": 2,
"name": "Product 2"
}
]