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

getPageById

الحصول على كائن صفحة واحدة مع معلومات حول النماذج، الكتل، القوائم المرتبطة بالصفحة.

الوصف

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

Pages.getPageById(

id*, langCode

);

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

المخطط

id(مطلوب): number
المعرف الفريد للصفحة التي سيتم جلبها
مثال: 1

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

أمثلة

مثال بسيط

const response = await Pages.getPageById(1);

مثال مع السمات

const response = await Pages.getPageById(1, 'en_US');

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

{
"id": 8,
"parentId": null,
"pageUrl": "blog",
"depth": 0,
"localizeInfos": {
"title": "Blog",
"menuTitle": "Blog",
"htmlContent": "",
"plainContent": ""
},
"isVisible": true,
"blocks": [
"slider"
],
"type": "common_page",
"templateIdentifier": "template",
"attributeSetIdentifier": "page",
"attributeValues": {
"text": {
"type": "string",
"value": "some text",
"position": 0,
"additionalFields": {}
},
"number": {
"type": "integer",
"value": 0,
"position": 1,
"additionalFields": {}
},
"real": {
"type": "real",
"value": "",
"position": 2,
"additionalFields": {}
},
"float": {
"type": "float",
"value": 0,
"position": 3,
"additionalFields": {}
}
},
"moduleFormConfigs": [
{
"id": 9,
"formIdentifier": "full_form",
"moduleIdentifier": "content",
"isGlobal": false,
"isClosed": false,
"isModerate": true,
"viewOnlyMyData": false,
"commentOnlyMyData": false,
"entityIdentifiers": [
{
"id": "blog",
"isNested": false
}
],
"formDataCount": 4827,
"ratingCalculation": "average",
"allowHalfRatings": null,
"maxRatingScale": null,
"isAnonymous": null,
"allowRerating": null,
"isRating": null,
"entityFormDataCount": {
"blog": 4827
},
"nestedEntityIdentifiers": [],
"exceptionIds": []
},
{
"id": 3,
"formIdentifier": "file_form",
"moduleIdentifier": "content",
"isGlobal": false,
"isClosed": false,
"isModerate": false,
"viewOnlyMyData": false,
"commentOnlyMyData": false,
"entityIdentifiers": [
{
"id": "blog",
"isNested": false
}
],
"formDataCount": 556,
"ratingCalculation": "average",
"allowHalfRatings": null,
"maxRatingScale": null,
"isAnonymous": null,
"allowRerating": null,
"isRating": null,
"entityFormDataCount": {
"blog": 556
},
"nestedEntityIdentifiers": [],
"exceptionIds": []
},
{
"id": 2,
"formIdentifier": "test-form",
"moduleIdentifier": "content",
"isGlobal": false,
"isClosed": false,
"isModerate": false,
"viewOnlyMyData": false,
"commentOnlyMyData": false,
"entityIdentifiers": [
{
"id": "blog",
"isNested": false
}
],
"formDataCount": 775,
"ratingCalculation": "average",
"allowHalfRatings": null,
"maxRatingScale": null,
"isAnonymous": null,
"allowRerating": null,
"isRating": null,
"entityFormDataCount": {
"blog": 775
},
"nestedEntityIdentifiers": [],
"exceptionIds": []
}
],
"isSync": true,
"template": {
"id": 4,
"attributeSetIdentifier": null,
"title": "Template",
"generalTypeId": 4,
"identifier": "template",
"version": 0,
"generalTypeName": "catalog_page",
"attributeValues": {},
"position": 1
}
}

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

المخطط: IPagesEntity

id: number
معرف الكائن.
مثال: 8

parentId: number | null
معرف الصفحة الأم، إذا كان يحتوي على null، فإنه يمثل الصفحة الرئيسية.
مثال: 10

pageUrl: string
رابط الصفحة الفريد.
مثال: "blog"

depth: number
عمق تعشيش الصفحة بالنسبة إلى parentId.
مثال: 10

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

{
"title": "Blog",
"menuTitle": "Blog",
"htmlContent": "",
"plainContent": ""
}

isVisible: boolean
علامة رؤية الصفحة.
مثال: true

type: PageType
نوع الصفحة.
مثال: "common_page"

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

attributeSetIdentifier: string | null
مجموعة معرفات السمات.
مثال: "page"

attributeValues: IAttributeValues
خريطة لقيم السمات مفاتيحها بواسطة العلامة؛ كائن فارغ عند عدم وجودها.
مثال:

{
"text": {
"type": "string",
"value": "some text",
"position": 0,
"additionalFields": []
}
}

isSync: boolean
إشارة إلى فهرسة الصفحة.
مثال: true

template: object
كائن القالب.
مثال:

{}

position: number
رقم العنصر (لترتيب).
مثال: 2

config: Record<string, number>
إعدادات الإخراج لصفحات الكتالوج.
مثال:

{
"rowsPerPage": 1,
"productsPerRow": 1
}

products: number
عدد المنتجات المرتبطة بالصفحة.
مثال: 0

childrenCount: number
عدد الأطفال.
مثال: 1

blocks: IBlockEntity[] | string[]
الكتل.
مثال:

{
"id": 4,
"attributeSetIdentifier": null,
"title": "Template",
"generalTypeId": 4,
"identifier": "template",
"version": 0,
"generalTypeName": "catalog_page",
"attributeValues": {},
"position": 1
}

blocks.attributeValues: IAttributeValues
خريطة لقيم السمات مفاتيحها بواسطة العلامة؛ كائن فارغ عند عدم وجودها.
مثال:

{
"block-text": {
"type": "string",
"value": "some text",
"isIcon": false,
"position": 0,
"additionalFields": [],
"isProductPreview": false
}
}

blocks.id: number
المعرف الفريد للكتلة.
مثال: 1234

blocks.localizeInfos: ILocalizeInfo
معلومات التوطين للكتلة.
مثال:

{
"key": "value"
}

blocks.version: number
إصدار كائن الكتلة.
مثال: 1

blocks.identifier: string
معرف سلسلة فريد للكتلة.
مثال: "block1"

blocks.type: BlockType
نوع الكتلة.
مثال: "product"

blocks.position: number
موضع الكتلة للترتيب.
مثال: 1

blocks.templateIdentifier: string | null
معرف القالب المستخدم من قبل الكتلة، أو null إذا لم يكن ذلك مناسبًا.
مثال: "template1"

blocks.isVisible: boolean
تشير إلى ما إذا كانت الكتلة مرئية.
مثال: true

blocks.countElementsPerRow: number
عدد العناصر المعروضة في كل صف في الكتلة، إذا كان ذلك مناسبًا.
مثال: 3

blocks.quantity: number
كمية العناصر في الكتلة، إذا كان ذلك مناسبًا.
مثال: 5

blocks.similarProducts: IProductsResponse
استجابة تحتوي على منتجات مشابهة مرتبطة بالكتلة.
مثال:

{
"total": 10,
"items": []
}

blocks.products: IProductsEntity[]
مصفوفة من كائنات المنتجات المرتبطة بالكتلة.
مثال:

[
{
"id": 1,
"name": "Product 1"
},
{
"id": 2,
"name": "Product 2"
}
]

moduleFormConfigs: Array<IFormConfig>
تكوينات نموذج الوحدة المرتبطة بالصفحة.

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

total: string
إجمالي عدد المنتجات المرتبطة بالصفحة.
مثال: "10"

categoryPath: string | null
سلسلة مسار الفئة؛ null للصفحات المتداخلة التي ليس لها مسار فئة خاص بها.
مثال: "catalog"


أمثلة الاستخدام

خطوات تفصيلية في الوثائق:

جربها مباشرة

قم بتشغيل هذه الطريقة بشكل تفاعلي في JS SDK sandbox — قم بتوصيل عنوان مشروعك ورمز التطبيق عند الزيارة الأولى، ثم افتح: