Aller au contenu principal

getChildPagesByParentUrl

Récupération des pages enfants avec des informations sur les produits par l'URL de la page parente sous forme de tableau.

Description

Renvoie toutes les pages créées sous forme de tableau d'objets ou un tableau vide [] (s'il n'y a pas de données) pour le parent sélectionné. Il renvoie une promesse qui se résout en un tableau d'objets IPagesEntity.

Pages.getChildPagesByParentUrl(

url*, langCode

);

Schéma des paramètres

Schéma

url(obligatoire): string
L'URL de la page parente pour laquelle les pages enfants doivent être récupérées
exemple : "about/our-team"

langCode: string
Code de langue. Par défaut : "en_US"
exemple : "en_US"

Exemples

Exemple minimal

const response = await Pages.getChildPagesByParentUrl('shop');

Exemple avec des attributs

const response = await Pages.getChildPagesByParentUrl('shop', '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": 1,
"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": 2,
"templateIdentifier": null,
"isSync": false,
"categoryPath": "blog2",
"rating": {},
"attributeValues": {},
"moduleFormConfigs": []
}
]

Schéma de réponse

Schéma : IPagesEntity

id: number
L'identifiant de l'objet.
exemple : 8

parentId: number | null
L'id de la page parente, s'il contient null, alors c'est la page de niveau supérieur.
exemple : 10

pageUrl: string
URL unique de la page.
exemple : "blog"

depth: number
Profondeur de la page par rapport à parentId.
exemple : 10

localizeInfos: ILocalizeInfo
Le nom de la page, en tenant compte de la localisation.
exemple :

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

isVisible: boolean
Un indicateur de visibilité de la page.
exemple : true

type: PageType
Type de la page.
exemple : "common_page"

templateIdentifier: string | null
Identifiant de l'utilisateur du modèle lié.
exemple : "template"

attributeSetIdentifier: string | null
Identifiant de l'ensemble d'attributs.
exemple : "page"

attributeValues: IAttributeValues
Carte des valeurs d'attributs indexées par marqueur ; objet vide lorsqu'il n'y en a pas.
exemple :

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

isSync: boolean
Indication de l'indexation de la page.
exemple : true

template: object
Objet modèle.
exemple :

{}

position: number
Numéro de l'élément (pour le tri).
exemple : 2

config: Record<string, number>
Paramètres de sortie pour les pages de catalogue.
exemple :

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

products: number
Le nombre de produits liés à la page.
exemple : 0

childrenCount: number
Nombre d'enfants.
exemple : 1

blocks: IBlockEntity[] | string[]
blocs.
exemple :

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

blocks.attributeValues: IAttributeValues
Carte des valeurs d'attributs indexées par marqueur ; objet vide lorsqu'il n'y en a pas.
exemple :

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

blocks.id: number
Identifiant unique du bloc.
exemple : 1234

blocks.localizeInfos: ILocalizeInfo
Informations de localisation pour le bloc.
exemple :

{
"key": "value"
}

blocks.version: number
Version de l'entité bloc.
exemple : 1

blocks.identifier: string
Identifiant de chaîne unique pour le bloc.
exemple : "block1"

blocks.type: BlockType
Type du bloc.
exemple : "product"

blocks.position: number
Position du bloc pour le tri.
exemple : 1

blocks.templateIdentifier: string | null
Identifiant du modèle utilisé par le bloc, ou null si non applicable.
exemple : "template1"

blocks.isVisible: boolean
Indique si le bloc est visible.
exemple : true

blocks.countElementsPerRow: number
Nombre d'éléments affichés par ligne dans le bloc, si applicable.
exemple : 3

blocks.quantity: number
Quantité d'articles dans le bloc, si applicable.
exemple : 5

blocks.similarProducts: IProductsResponse
Réponse contenant des produits similaires associés au bloc.
exemple :

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

blocks.products: IProductsEntity[]
Tableau d'entités de produits associés au bloc.
exemple :

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

moduleFormConfigs: Array<IFormConfig>
Configurations de formulaire de module liées à la page.

rating: IRating
Données d'évaluation.

total: string
Nombre total de produits liés à la page.
exemple : "10"

categoryPath: string | null
Chaîne de chemin de catégorie ; null pour les pages imbriquées qui n'ont pas de chemin de catégorie propre.
exemple : "catalog"