getRootPages
Mengambil semua objek halaman tingkat atas (parentId = null).
Deskripsi
Metode ini mengambil semua objek halaman tingkat atas dari API. Ini mengembalikan sebuah Promise yang menyelesaikan menjadi array objek halaman tingkat atas IPagesEntity atau array kosong [] jika tidak ada data.
Halaman.getRootPages(langCode);
Skema parameter
Skema
langCode: string
Kode bahasa. Default: "en_US"
contoh: "en_US"
Contoh
Contoh minimal
const response = await Pages.getRootPages();
Contoh respons
[
{
"id": 8,
"config": {},
"depth": 0,
"parentId": null,
"pageUrl": "blog",
"attributeSetIdentifier": "page",
"localizeInfos": {
"title": "Blog",
"htmlContent": "",
"plainContent": "",
"menuTitle": "Blog"
},
"isVisible": true,
"products": 0,
"childrenCount": 2,
"type": "common_page",
"position": 1,
"templateIdentifier": "template",
"isSync": true,
"categoryPath": "blog",
"rating": {},
"attributeValues": {
"text": {
"type": "string",
"value": "some text",
"isIcon": false,
"position": 0,
"additionalFields": {},
"isProductPreview": false
},
"number": {
"type": "integer",
"value": 5,
"isIcon": false,
"position": 1,
"additionalFields": {},
"isProductPreview": false
},
"real": {
"type": "real",
"value": "10",
"isIcon": false,
"position": 2,
"additionalFields": {},
"isProductPreview": false
},
"float": {
"type": "float",
"value": 12,
"isIcon": false,
"position": 3,
"additionalFields": {},
"isProductPreview": false
}
},
"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": []
}
],
"template": {
"id": 4,
"attributeSetIdentifier": null,
"title": "Template",
"generalTypeId": 4,
"identifier": "template",
"version": 0,
"generalTypeName": "catalog_page",
"attributeValues": {},
"position": 1
}
},
{
"id": 10,
"config": {},
"depth": 0,
"parentId": null,
"pageUrl": "catalog",
"attributeSetIdentifier": "page",
"localizeInfos": {
"title": "Catalog",
"htmlContent": "",
"plainContent": "",
"menuTitle": "Catalog"
},
"isVisible": true,
"products": 6,
"childrenCount": 0,
"type": "catalog_page",
"position": 2,
"templateIdentifier": "template",
"isSync": true,
"categoryPath": "catalog",
"rating": {},
"attributeValues": {
"text": {
"type": "string",
"value": "catalog text",
"isIcon": false,
"position": 0,
"additionalFields": {},
"isProductPreview": false
},
"number": {
"type": "integer",
"value": 10,
"isIcon": false,
"position": 1,
"additionalFields": {},
"isProductPreview": false
},
"real": {
"type": "real",
"value": "5",
"isIcon": false,
"position": 2,
"additionalFields": {},
"isProductPreview": false
},
"float": {
"type": "float",
"value": 15,
"isIcon": false,
"position": 3,
"additionalFields": {},
"isProductPreview": false
}
},
"moduleFormConfigs": [],
"template": {
"id": 4,
"attributeSetIdentifier": null,
"title": "Template",
"generalTypeId": 4,
"identifier": "template",
"version": 0,
"generalTypeName": "catalog_page",
"attributeValues": {},
"position": 1
}
},
{
"id": 50,
"config": {},
"depth": 0,
"parentId": null,
"pageUrl": "test",
"attributeSetIdentifier": null,
"localizeInfos": {
"title": "Test",
"htmlContent": "",
"plainContent": "",
"menuTitle": "Test"
},
"isVisible": true,
"products": 0,
"childrenCount": 0,
"type": "common_page",
"position": 3,
"templateIdentifier": null,
"isSync": false,
"categoryPath": "test",
"rating": {},
"attributeValues": {},
"moduleFormConfigs": []
}
]
Skema respons
Skema: IPagesEntity[]
id: number
Pengidentifikasi objek.
contoh: 8
parentId: number | null
Id halaman induk, jika berisi null, maka itu adalah halaman tingkat atas.
contoh: 10
pageUrl: string
URL halaman yang unik.
contoh: "blog"
depth: number
Kedalaman pengelompokan halaman relatif terhadap parentId.
contoh: 10
localizeInfos: ILocalizeInfo
Nama halaman, dengan mempertimbangkan lokalisasi.
contoh:
{
"title": "Blog",
"menuTitle": "Blog",
"htmlContent": "",
"plainContent": ""
}
isVisible: boolean
Tanda visibilitas halaman.
contoh: true
type: PageType
Tipe halaman.
contoh: "common_page"
templateIdentifier: string | null
Id pengguna dari template yang terhubung.
contoh: "template"
attributeSetIdentifier: string | null
Set id atribut.
contoh: "page"
attributeValues: IAttributeValues
Peta nilai atribut yang dikunci oleh penanda; objek kosong jika tidak ada.
contoh:
{
"text": {
"type": "string",
"value": "some text",
"position": 0,
"additionalFields": []
}
}
isSync: boolean
Indikasi pengindeksan halaman.
contoh: true
template: object
Objek template.
contoh:
{}
position: number
Nomor item (untuk pengurutan).
contoh: 2
config: Record<string, number>
Pengaturan output untuk halaman katalog.
contoh:
{
"rowsPerPage": 1,
"productsPerRow": 1
}
products: number
Jumlah produk yang terhubung ke halaman.
contoh: 0
childrenCount: number
Jumlah anak.
contoh: 1
blocks: IBlockEntity[] | string[]
blok.
contoh:
{
"id": 4,
"attributeSetIdentifier": null,
"title": "Template",
"generalTypeId": 4,
"identifier": "template",
"version": 0,
"generalTypeName": "catalog_page",
"attributeValues": {},
"position": 1
}
blocks.attributeValues: IAttributeValues
Peta nilai atribut yang dikunci oleh penanda; objek kosong jika tidak ada.
contoh:
{
"block-text": {
"type": "string",
"value": "some text",
"isIcon": false,
"position": 0,
"additionalFields": [],
"isProductPreview": false
}
}
blocks.id: number
Pengidentifikasi unik dari blok.
contoh: 1234
blocks.localizeInfos: ILocalizeInfo
Informasi lokalisasi untuk blok.
contoh:
{
"key": "value"
}
blocks.version: number
Versi entitas blok.
contoh: 1
blocks.identifier: string
Pengidentifikasi string unik untuk blok.
contoh: "block1"
blocks.type: BlockType
Tipe blok.
contoh: "product"
blocks.position: number
Posisi blok untuk pengurutan.
contoh: 1
blocks.templateIdentifier: string | null
Pengidentifikasi untuk template yang digunakan oleh blok, atau null jika tidak berlaku.
contoh: "template1"
blocks.isVisible: boolean
Menunjukkan apakah blok terlihat.
contoh: true
blocks.countElementsPerRow: number
Jumlah elemen yang ditampilkan per baris di blok, jika berlaku.
contoh: 3
blocks.quantity: number
Jumlah item dalam blok, jika berlaku.
contoh: 5
blocks.similarProducts: IProductsResponse
Respons yang berisi produk serupa yang terkait dengan blok.
contoh:
{
"total": 10,
"items": []
}
blocks.products: IProductsEntity[]
Array entitas produk yang terkait dengan blok.
contoh:
[
{
"id": 1,
"name": "Product 1"
},
{
"id": 2,
"name": "Product 2"
}
]
moduleFormConfigs: Array<IFormConfig>
Konfigurasi formulir modul yang terhubung ke halaman.
rating: IRating
Data penilaian.
total: string
Total jumlah produk yang terhubung ke halaman.
contoh: "10"
categoryPath: string | null
String jalur kategori; null untuk halaman bersarang yang tidak memiliki jalur kategori sendiri.
contoh: "catalog"
Contoh penggunaan
Panduan langkah demi langkah dalam dokumentasi:
- Dapatkan halaman root — ambil semua halaman tingkat atas tanpa induk.
Coba secara langsung
Jalankan metode ini secara interaktif di JS SDK sandbox — sambungkan URL Proyek dan Token Aplikasi Anda pada kunjungan pertama, lalu buka:
- Dapatkan halaman root — ambil semua halaman tingkat atas tanpa induk.