getPages
Récupération de tous les objets de page avec des informations sur les produits sous forme de tableau.
Description
Cette méthode récupère toutes les pages créées sous forme de tableau depuis l'API. Elle renvoie une Promesse qui se résout en un tableau d'objets IPagesEntity.
Pages.getPages(
langCode);
Schéma des paramètres
Schéma
langCode: string
Code de langue. Par défaut : "en_US"
exemple : "en_US"
Exemples
Exemple minimal
const response = await Pages.getPages();
Exemple avec des attributs
const response = await Pages.getPages('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": 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": 2,
"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": 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": 3,
"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 d'imbrication 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 page.
exemple : "common_page"
templateIdentifier: string | null
Identifiant 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 unique sous forme de chaîne 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ées 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"
Exemples d'utilisation
Guide étape par étape dans la documentation :
- Obtenir toutes les pages — récupérer les pages à toutes les profondeurs en une seule requête.
Essayez-le en direct
Exécutez cette méthode de manière interactive dans le bac à sable JS SDK — connectez votre URL de projet et votre jeton d'application lors de votre première visite, puis ouvrez :
- Obtenir toutes les pages — récupérer les pages à toutes les profondeurs en une seule requête.