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

searchPage

بحث سريع عن كائنات الصفحة مع مخرجات محدودة.

Description

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

Pages.searchPage(

name*, url, langCode

);

Parameters schema

Schema

name(required): string
النص للبحث عن كائنات الصفحة (يتم البحث في حقل العنوان لكائن localizeInfos مع أخذ اللغة في الاعتبار)
مثال: "معلومات عنا"

url: string
رابط الصفحة
مثال: "catalog"

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

Examples

Minimal example

const response = await Pages.searchPage('cup');

Example with attributes

const response = await Pages.searchPage('cup', 'en_US');

Example response

[
{
"id": 10,
"parentId": null,
"pageUrl": "catalog",
"depth": 0,
"localizeInfos": {
"title": "Catalog",
"menuTitle": "Catalog",
"htmlContent": "",
"plainContent": ""
},
"isVisible": true,
"blocks": [
"product_block",
"test",
"freq_ordered",
"..."
],
"type": "catalog_page",
"templateIdentifier": "template",
"attributeSetIdentifier": "page",
"attributeValues": {
"text": {
"type": "string",
"value": "catalog 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": [],
"isSync": true,
"template": {
"id": 4,
"attributeSetIdentifier": null,
"title": "Template",
"generalTypeId": 4,
"identifier": "template",
"version": 0,
"generalTypeName": "catalog_page",
"attributeValues": {},
"position": 1
}
}
]

Response schema

Schema: 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"