Skip to main content

getPageByUrl

Getting a single page object with information about forms, blocks, menus attached to the page by URL.

Description

This method retrieves a single page object based on its URL (url) from the API. It returns a Promise that resolves to the page object, with the specific object depending on the type of page being returned.

Pages.getPageByUrl( url, langCode );

Parameters schema

Schema

url(required): string
Page URL
example: "about"

langCode: string
Language code. Default: "en_US"
example: "en_US"

Examples

Minimal example

const value = await Pages.getPageByUrl('shop');

Example with attributes

const value = await Pages.getPageByUrl('shop', 'en_US');

Example response

{
"id": 9,
"parentId": 8,
"pageUrl": "blog1",
"depth": 1,
"localizeInfos": {
"title": "Blog 1",
"menuTitle": "Blog 1",
"htmlContent": "",
"plainContent": ""
},
"isVisible": true,
"forms": [],
"blocks": [],
"type": "common_page",
"templateIdentifier": null,
"attributeSetIdentifier": null,
"attributeValues": {},
"isSync": false
}

Response schema

Schema: IPagesEntity

id: number
The identifier of the object.
example: 8

parentId: number | null
The id of the parent page, if it contains null, then it is the top-level page.
example: 10

pageUrl: string
Unique page Url.
example: "blog"

depth: number
Page nesting depth relative to parentId.
example: 10

localizeInfos: ILocalizeInfo
The name of the page, taking into account localization.
example:

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

isVisible: boolean
A sign of page visibility.
example: true

type: Types
Page type.
example:

"common_page"

templateIdentifier: string | null
User id of the linked template.
example: "template"

attributeSetIdentifier: string | null
Set of attributes id.
example: "page"

attributeValues: AttributeType
Array of attribute values from the index (represented as a pair of user attribute id: attribute value).
example:

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

isSync: boolean
Indication of page indexing.
example: true

template: any
Template object.

position: number
Item number (for sorting).
example: 2

config: any
Output settings for catalog pages.
example:

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

products: number
The number of products linked to the page.
example: 0

childrenCount: number
Children count.
example: 1