getChildPagesByParentUrl
Récupère les pages enfants d'une page par l'URL du parent.
Description
Récupère les pages créées sous la page parente avec l'url indiquée. Renvoie un tableau d'objets IPagesEntity, ou [] si la page n'a pas d'enfants.
.getChildPagesByParentUrl(
,
);
Schéma des paramètres
Schema
url(required): string
URL de la page parente dont récupérer les pages enfants.
exemple : "about/our-team"
langCode: string
Code de langue. Par défaut : le langCode passé à defineOneEntry ("en_US" s'il n'y en a pas).
exemple : "en_US"
Exemples
Exemple minimal
const response = await Pages.getChildPagesByParentUrl('blog');
Exemple avec langCode
const response = await Pages.getChildPagesByParentUrl('blog', 'en_US');
Exemple de réponse
[
{
"id": 9,
"config": {},
"depth": 1,
"parentId": 8,
"pageUrl": "blog1",
"attributeSetIdentifier": null,
"localizeInfos": {
"title": "Blog 1",
"htmlContent": "",
"plainContent": "",
"menuTitle": "Blog 1"
},
"isVisible": true,
"products": 0,
"childrenCount": 0,
"type": "common_page",
"position": 2,
"templateIdentifier": null,
"isSync": false,
"categoryPath": "blog/blog1",
"rating": {},
"attributeValues": {},
"moduleFormConfigs": []
},
{
"id": 49,
"config": {},
"depth": 1,
"parentId": 8,
"pageUrl": "blog2",
"attributeSetIdentifier": null,
"localizeInfos": {
"title": "Blog 2",
"htmlContent": "",
"plainContent": "",
"menuTitle": "Blog 2"
},
"isVisible": true,
"products": 0,
"childrenCount": 0,
"type": "common_page",
"position": 1,
"templateIdentifier": null,
"isSync": false,
"categoryPath": "blog2",
"rating": {},
"attributeValues": {},
"moduleFormConfigs": []
}
]
Schéma de réponse
Schema: IPagesEntity[]
id: number
ID de l'objet.
exemple : 8
parentId: number | null
ID de la page parente ; null pour une page de premier niveau.
exemple : 10
pageUrl: string
URL de la page.
exemple : "blog"
depth: number
Niveau d'imbrication de la page : 0 pour une page de premier niveau, 1 pour ses enfants, et ainsi de suite.
exemple : 10
localizeInfos: ILocalizeInfo
Contenu localisé de la page : title, menuTitle, htmlContent et plainContent.
exemple :
{
"title": "Blog",
"menuTitle": "Blog",
"htmlContent": "",
"plainContent": ""
}
isVisible: boolean
Indique si la page est visible.
exemple : true
type: PageType
Type de page.
exemple : "common_page"
templateIdentifier: string | null
Marqueur du modèle lié.
exemple : "template"
attributeSetIdentifier: string | null
Marqueur de l'ensemble d'attributs, ou null si aucun n'est attribué.
exemple : "page"
attributeValues: IAttributeValues
Valeurs d'attributs indexées par marqueur ; un objet vide s'il n'y en a aucune.
exemple :
{
"text": {
"type": "string",
"value": "some text",
"position": 0,
"additionalFields": {}
}
}
isSync: boolean
Indique si l'index des attributs de la page est à jour pour la langue demandée.
exemple : true
template: object
Modèle lié à la page.
exemple :
{}
position: number
Position utilisée pour le tri.
exemple : 2
config: Record<string, number>
Paramètres d'affichage des pages de catalogue.
exemple :
{
"rowsPerPage": 1,
"productsPerRow": 1
}
products: number
Nombre de produits liés à la page.
exemple : 0
childrenCount: number
Nombre de pages enfants.
exemple : 1
blocks: IBlockEntity[] | string[]
Blocs rattachés à la page : objets de bloc ou leurs marqueurs.
exemple :
[
"product_block"
]
blocks.attributeValues: IAttributeValues
Valeurs d'attributs indexées par marqueur ; un objet vide s'il n'y en a aucune.
exemple :
{
"block-text": {
"type": "string",
"value": "some text",
"isIcon": false,
"position": 0,
"additionalFields": {},
"isProductPreview": false
}
}
blocks.id: number
ID du bloc.
exemple : 1234
blocks.localizeInfos: ILocalizeInfo
Données localisées du bloc.
exemple :
{
"title": "Example title"
}
blocks.version: number
Numéro de version du bloc.
exemple : 1
blocks.identifier: string
Marqueur du bloc.
exemple : "block1"
blocks.type: BlockType
Type du bloc.
exemple : "product"
blocks.position: number
Position du bloc, utilisée pour le tri.
exemple : 1
blocks.templateIdentifier: string | null
Marqueur du modèle utilisé par le bloc, ou null.
exemple : "template1"
blocks.isVisible: boolean
Indique si le bloc est visible.
exemple : true
blocks.countElementsPerRow: number
Nombre d'éléments par ligne dans le bloc, s'il est défini.
exemple : 3
blocks.quantity: number
Quantité d'éléments dans le bloc, le cas échéant.
exemple : 5
blocks.similarProducts: IProductsResponse
Produits similaires du bloc, sous forme de total et items.
exemple :
{
"total": 10,
"items": []
}
blocks.products: IProductsEntity[]
Produits liés au bloc.
exemple :
[
{
"id": 1,
"name": "Product 1"
},
{
"id": 2,
"name": "Product 2"
}
]
moduleFormConfigs: Array<IFormConfig>
Configurations de formulaire du module liées à la page.
rating: IRating
Données de notation : valeur moyenne, j'aime et je n'aime pas, et méthode de calcul.
total: string
Non renvoyé par la Content API ; utilisez products pour connaître le nombre de produits liés.
exemple : "10"
categoryPath: string | null
Chemin de catégorie ; null pour les pages imbriquées qui n'ont pas de chemin de catégorie propre.
exemple : "catalog"
distance: number
Distance cosinus à la requête. Renvoyée sur chaque élément par l'endpoint de recherche sémantique (vectorielle).
exemple : 0.12