getBlocksByPageUrl
استلام الكائنات لكتلة ذات صلة من خلال عنوان URL للصفحة.
الوصف
احصل على كائنات PositionBlock للصفحة من خلال عنوان URL. يعيد Promise يتم حله إلى مصفوفة من كائنات IPositionBlock.
Pages.getBlocksByPageUrl(
url*,
langCode
);
مخطط المعلمات
المخطط
url(مطلوب): string
عنوان URL للصفحة
مثال: "about"
langCode: string
رمز اللغة. الافتراضي: "en_US"
مثال: "en_US"
أمثلة
مثال بسيط
const response = await Pages.getBlocksByPageUrl('shop');
مثال مع السمات
const response = await Pages.getBlocksByPageUrl('shop', 'en_US');
مثال على الاستجابة
[
{
"id": 1,
"attributeSetIdentifier": null,
"localizeInfos": {
"title": "Product Block"
},
"isVisible": true,
"version": 0,
"position": 1,
"identifier": "product_block",
"type": "product_block",
"templateIdentifier": null,
"isSync": false,
"attributeValues": {},
"countElementsPerRow": 1,
"quantity": 1,
"products": [
{
"id": 2959,
"localizeInfos": {
"title": "Split"
},
"statusIdentifier": "sale",
"statusLocalizeInfos": {
"title": "Sale"
},
"attributeSetIdentifier": "test",
"position": 1,
"templateIdentifier": null,
"shortDescTemplateIdentifier": "product_preview",
"price": 120,
"additional": {
"prices": {
"min": 51,
"max": 180
}
},
"sku": null,
"isSync": true,
"attributeValues": {
"p": {
"type": "float",
"value": 120,
"isIcon": false,
"position": 0,
"additionalFields": {},
"isProductPreview": false
},
"p1": {
"type": "float",
"value": 40,
"isIcon": false,
"position": 1,
"additionalFields": {},
"isProductPreview": false
},
"p2": {
"type": "float",
"value": 60,
"isIcon": false,
"position": 2,
"additionalFields": {},
"isProductPreview": false
},
"p3": {
"type": "float",
"value": 20,
"isIcon": false,
"position": 3,
"additionalFields": {},
"isProductPreview": false
},
"currency": {
"type": "string",
"value": "usd",
"isIcon": false,
"position": 4,
"additionalFields": {},
"isProductPreview": false
}
},
"categories": [
"catalog"
],
"rating": {},
"isVisible": true,
"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": {}
}
]
},
{
"id": 4,
"attributeSetIdentifier": "block",
"localizeInfos": {
"title": "test"
},
"isVisible": true,
"version": 31,
"position": 2,
"identifier": "test",
"type": "common_block",
"templateIdentifier": null,
"isSync": 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
}
}
},
{
"id": 6,
"attributeSetIdentifier": null,
"localizeInfos": {
"title": "Frequently ordered"
},
"isVisible": true,
"version": 2,
"position": 3,
"identifier": "freq_ordered",
"type": "frequently_ordered_block",
"templateIdentifier": "frequently_ordered_block_default",
"isSync": false,
"attributeValues": {}
},
"..."
]
مخطط الاستجابة
المخطط: IPositionBlock[]
id: number
معرف الكائن.
مثال: 1
attributeSetIdentifier: string | null
مجموعة معرفات السمات.
مثال: "block"
localizeInfos: ILocalizeInfo
اسم الصفحة، مع الأخذ في الاعتبار التوطين.
مثال:
{
"title": "Blog",
"menuTitle": "Blog",
"htmlContent": "",
"plainContent": ""
}
version: number
رقم إصدار الكائن.
مثال: 0
position: number
موضع الكائن.
مثال: 1
identifier: string
المعرف النصي لحقل السجل.
مثال: "product_block"
type: BlockType
نوع الكتلة.
مثال: "product"
templateIdentifier: string | null
معرف المستخدم للقالب المرتبط.
مثال: null
isVisible: boolean
علامة رؤية الصفحة.
مثال: true
isSync: boolean
إشارة إلى فهرسة الصفحة.
مثال: false
attributeValues: IAttributeValues
خريطة لقيم السمات مفاتيحها بواسطة العلامة؛ كائن فارغ عند عدم وجودها.
مثال:
{
"block-text": {
"type": "string",
"value": "some text",
"position": 0,
"additionalFields": []
}
}
countElementsPerRow: number
عدد العناصر المعروضة في كل صف في الكتلة، إذا كان ذلك مناسبًا.
مثال: 3
quantity: number
عدد الصفحات في الكتلة.
مثال: 1
similarProducts: IProductsResponse
استجابة المنتجات المماثلة (الإجمالي + العناصر). تظهر فقط لكتل "similar_products_block" وفقط عندما يكون وضع توفير الحركة مغلقًا.
similarProducts.total: number
إجمالي عدد المنتجات الموجودة.
مثال: 100
similarProducts.items: IProductsEntity[]
مصفوفة من كائنات المنتجات.
مثال:
[
{
"id": 12345,
"title": "Product 1"
},
{
"id": 67890,
"title": "Product 2"
}
]
products: IProductsEntity[]
مصفوفة من المنتجات المرتبطة بالكتلة. تظهر فقط لكتل "product_block" وفقط عندما يكون وضع توفير الحركة مغلقًا.
products.id: number
المعرف الفريد.
مثال: 12345
products.localizeInfos: ILocalizeInfo
اسم المنتجات، مع الأخذ في الاعتبار التوطين.
مثال:
{}
products.statusIdentifier: string | null
معرفات حالة صفحة المنتج (قد تكون null).
مثال: "in_stock"
products.statusLocalizeInfos: ILocalizeInfo
اسم الحالة المحلي للمنتج.
مثال:
{ "title": "Sale" }
products.attributeSetIdentifier: string | null
مجموعة معرفات السمات.
مثال: "set_12345"
products.position: number
رقم العنصر (لترتيب).
مثال: 1
products.price: number | null
قيمة سعر صفحة المنتج المأخوذة من الفهرس.
مثال: 150.00
products.additional: object
قيمة إضافية من الفهرس.
مثال:
{
"prices": {
"min": 5,
"max": 150
}
}
products.sku: string | null
SKU المنتج (وحدة حفظ المخزون)، قد تكون null.
مثال: "SKU_12345"
products.isSync: boolean
إشارة إلى فهرسة الصفحة.
مثال: true
products.attributeValues: IAttributeValues
مصفوفة من قيم السمات من الفهرس، ممثلة.
مثال:
[
{
"id": "color",
"value": "red"
}
]
products.categories: string[]
فئات المنتجات.
مثال:
[
1,
2,
3
]
products.isVisible: boolean
علامة رؤية الصفحة.
مثال: true
products.moduleFormConfigs: Array<IFormConfig>
تكوينات نموذج الوحدة (اختياري).
products.rating: IRating
بيانات التقييم.
products.isPositionLocked: boolean
مؤشر قفل موضع الترتيب (اختياري).
مثال: false
products.relatedIds: number[]
معرفات صفحات المنتجات ذات الصلة.
مثال:
[
12345,
67890
]
products.paymentStages: unknown
بيانات مراحل الدفع (قد تكون null).
مثال: null
products.distance: number
مسافة الصلة في البحث (الدلالي). تظهر فقط في نتائج البحث الدلالي.
مثال: 0.42
products.discountConfig: Record<string, unknown>
كائن تكوين الخصم.
مثال:
{}
products.templateIdentifier: string | null
معرف المستخدم للقالب المرتبط.
مثال: "template_12345"
products.shortDescTemplateIdentifier: string | null
معرف المستخدم للقالب المرتبط للوصف القصير.
مثال: "short_desc_template_12345"
products.signedPrice: string
سعر المنتج الموقّع يتم الحصول عليه مع بيانات المنتج عندما يتم تعيين signPrice.
مثال: "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9..."
products.productPages: IProductPageRef[]
مصفوفة من مراجع صفحات المنتجات تربط المنتج بصفحاته.
مثال:
[
{
"id": 16,
"pageId": 4,
"productId": 15,
"positionId": 244,
"categoryPath": "products"
}
]
products.blocks: string[]
مصفوفة من معرفات الكتل.
مثال:
[
"block_12345",
"block_67890"
]
🔒
signedPriceهو الرمز الموقّع الذي يحمل السعر المقفل — أعده عند إنشاء طلب. انظر سعر المنتج الثابت (signedPrice).