getPageById
Récupération d'un objet de page unique avec des informations sur les formulaires, les blocs, les menus attachés à la page.
Description
Cette méthode récupère un objet de page unique basé sur son identifiant (id) depuis l'API. Elle renvoie une Promesse qui se résout en l'objet de page IPagesEntity, avec l'objet spécifique dépendant du type de page retourné.
Pages.getPageById(
id*,
langCode
);
Schéma des paramètres
Schéma
id(obligatoire) : number
L'identifiant unique de la page à récupérer
exemple : 1
langCode : string
Code de langue. Par défaut : "en_US"
exemple : "en_US"
Exemples
Exemple minimal
const response = await Pages.getPageById(1);
Exemple avec des attributs
const response = await Pages.getPageById(1, 'en_US');
Exemple de réponse
{
"id": 8,
"parentId": null,
"pageUrl": "blog",
"depth": 0,
"localizeInfos": {
"title": "Blog",
"menuTitle": "Blog",
"htmlContent": "",
"plainContent": ""
},
"isVisible": true,
"blocks": [],
"type": "common_page",
"templateIdentifier": "template",
"attributeSetIdentifier": "page",
"attributeValues": {
"text": {
"type": "string",
"value": "some text",
"position": 0,
"additionalFields": {}
},
"number": {
"type": "integer",
"value": 0,
"position": 1,
"additionalFields": {}
},
"real": {
"type": "real",
"value": "",
"position": 2,
"additionalFields": {}
},
"float": {
"type": "float",
"value": 0,
"position": 3,
"additionalFields": {}
}
},
"moduleFormConfigs": [
{
"id": 9,
"formIdentifier": "full_form",
"moduleIdentifier": "content",
"isGlobal": false,
"isClosed": false,
"isModerate": true,
"viewOnlyMyData": false,
"commentOnlyMyData": false,
"entityIdentifiers": [
{
"id": "blog",
"isNested": false
}
],
"formDataCount": 3902,
"ratingCalculation": "average",
"allowHalfRatings": null,
"maxRatingScale": null,
"isAnonymous": null,
"allowRerating": null,
"isRating": null,
"entityFormDataCount": {
"blog": 3902
},
"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": 479,
"ratingCalculation": "average",
"allowHalfRatings": null,
"maxRatingScale": null,
"isAnonymous": null,
"allowRerating": null,
"isRating": null,
"entityFormDataCount": {
"blog": 479
},
"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": 688,
"ratingCalculation": "average",
"allowHalfRatings": null,
"maxRatingScale": null,
"isAnonymous": null,
"allowRerating": null,
"isRating": null,
"entityFormDataCount": {
"blog": 688
},
"nestedEntityIdentifiers": [],
"exceptionIds": []
}
],
"isSync": true,
"template": {
"id": 4,
"attributeSetIdentifier": null,
"title": "Template",
"generalTypeId": 4,
"identifier": "template",
"version": 0,
"generalTypeName": "catalog_page",
"attributeValues": {},
"position": 1
}
}
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 : Types
Type de la page.
exemple : "common_page"
templateIdentifier : string | null
Id utilisateur du modèle lié.
exemple : "template"
attributeSetIdentifier : string | null
Id 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 : string
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 en 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": []
}
similarProducts.total : number
Le nombre total de produits trouvés.
exemple : 100
similarProducts.items : IProductsEntity[]
Un tableau d'entités de produits.
exemple :
[
{
"id": 12345,
"title": "Product 1"
},
{
"id": 67890,
"title": "Product 2"
}
]
items.id : number
L'identifiant unique.
exemple : 12345
items.localizeInfos : ILocalizeInfo
Le nom des produits, en tenant compte de la localisation.
exemple :
items.statusIdentifier : string | null
Identifiants de statut de la page produit (peut être null).
exemple : "in_stock"
items.statusLocalizeInfos : ILocalizeInfo
Nom de statut localisé pour le produit.
exemple : { "title": "Vente" }
items.attributeSetIdentifier : string | null
Id de l'ensemble d'attributs.
exemple : "set_12345"
items.position : number
Numéro de l'élément (pour le tri).
exemple : 1
items.price : number | null
La valeur du prix de la page produit prise dans l'index.
exemple : 150.00
items.additional : object
Valeur supplémentaire de l'index.
exemple : { prices: { min: 5 max: 150 } }
items.sku : string | null
SKU du produit (Stock Keeping Unit), peut être null.
exemple : "SKU_12345"
items.isSync : boolean
Indication de l'indexation de la page.
exemple : true
items.attributeValues : AttributeType
Tableau des valeurs d'attributs de l'index, représentées.
exemple :
[
{
"id": "color",
"value": "red"
}
]
items.categories : string[]
Catégories de produits.
exemple :
[
1,
2,
3
]
items.isVisible : boolean
Un indicateur de visibilité de la page.
exemple : true
items.moduleFormConfigs : Array<IFormConfig>
Configurations de formulaires de module (optionnel).
items.rating : IRating
Données d'évaluation.
items.isPositionLocked : boolean
Indicateur de verrouillage de la position de tri (optionnel).
exemple : false
items.relatedIds : number[]
Ids des pages de produits connexes.
exemple :
[
12345,
67890
]
items.paymentStages : unknown
Données des étapes de paiement (peut être null).
exemple : null
items.discountConfig : Record<string, unknown>
Objet de configuration de remise.
exemple :
items.templateIdentifier : string | null
Id utilisateur du modèle lié.
exemple : "template_12345"
items.shortDescTemplateIdentifier : string | null
Id utilisateur du modèle lié pour une description courte.
exemple : "short_desc_template_12345"
items.signedPrice : string
Indication de prix.
items.productPages : IProductPageRef[]
Tableau de références de pages de produits liant le produit à ses pages.
exemple :
[
{
"id": 16,
"pageId": 4,
"productId": 15,
"positionId": 244,
"categoryPath": "products"
}
]
productPages.id : number
Identifiant unique de l'enregistrement de lien produit-page.
exemple : 16
productPages.pageId : number
Identifiant de la page à laquelle le produit est lié.
exemple : 4
productPages.productId : number
Identifiant du produit.
exemple : 15
productPages.positionId : number
Identifiant de position de tri au sein de la page.
exemple : 244
productPages.categoryPath : string
Chemin de catégorie de la page à laquelle appartient le produit.
exemple : "products"
items.blocks : string[]
Tableau d'identifiants de blocs.
exemple :
[
"block_12345",
"block_67890"
]
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 formulaires 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
Chaîne de chemin de catégorie.
exemple : "catalog"