Aller au contenu principal

getProductsByPageId

Rechercher tous les objets de produit avec pagination pour la catégorie sélectionnée.

Produits?.getProductsByPageId( id?, body?, langCode?, userQuery? );

Exemple minimal

const body `= [
{
"attributeMarker": "price",?
"conditionMarker": "mth",?
"statusMarker": "waiting",?
"conditionValue": 1,?
"pageUrls": [?
"23-laminat-floorwood-maxima"?
],
"isNested": false,?
"title": ""?
},
{
"attributeMarker": "price",?
"conditionMarker": "lth",?
"conditionValue": 3,?
"pageUrls": [?
"23-laminat-floorwood-maxima"?
],
"isNested": false,?
"title": ""?
}
];
Schéma

id(required): number
Identifiant de la page
exemple : 2492

body: IFilterParams[]
Corps de la requête. Par défaut : []
exemple :

[
{
"attributeMarker": "price",
"conditionMarker": "mth",
"statusMarker": "waiting",
"conditionValue": 1,
"pageUrls": [
"23-laminat-floorwood-maxima"
],
"isNested": false,
"title": ""
},
{
"attributeMarker": "price",
"conditionMarker": "lth",
"conditionValue": 3,
"pageUrls": [
"23-laminat-floorwood-maxima"
],
"isNested": false,
"title": ""
}
]

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

userQuery: IProductsQuery
Paramètres de requête optionnels

offset(required): number
Paramètre pour la pagination. Par défaut : 0.

limit(required): number
Paramètre pour la pagination. Par défaut : 30.

sortOrder(required): string
Ordre de tri "DESC" | "ASC". Par défaut : "DESC".

sortKey(required): string
Champ pour le tri (par défaut - null). Valeurs possibles : "id", "position", "title", "date", "price". Par défaut : null.

templateMarker: string | null
Marqueur de modèle de page produit, par défaut null.
exemple : "template_12345"

statusMarker: string | null
Marqueur d'état de la page produit, par défaut null.
exemple : "in_stock"

conditionValue: string | null
La valeur recherchée, par défaut null.
exemple : "new"

attributeMarker: string | null
L'identifiant textuel de l'attribut indexé par lequel les valeurs sont filtrées, par défaut null.
exemple : "color"

conditionMarker: string | null
Marqueur de la condition de filtre par laquelle les valeurs sont filtrées, par défaut null.
exemple : "equals"

Cette méthode recherche tous les objets de produits avec pagination pour la catégorie sélectionnée, en fonction des paramètres de requête fournis (userQuery). Elle renvoie une promesse qui se résout en un tableau d'éléments, où chaque élément est un objet.

Exemple de réponse

{
"items": [
{
"id": 2954,
"localizeInfos": {
"title": "Boîte"
},
"statusIdentifier": "sale",
"statusLocalizeInfos": {
"title": "Vente"
},
"attributeSetIdentifier": "products",
"position": 1,
"templateIdentifier": null,
"shortDescTemplateIdentifier": "product_preview",
"price": 50,
"additional": {
"prices": {
"min": 50,
"max": 150
}
},
"sku": null,
"isSync": true,
"attributeValues": {
"product-name": {
"type": "string",
"value": "product-name",
"isIcon": false,
"position": 0,
"additionalFields": [],
"isProductPreview": false
},
"price": {
"type": "integer",
"value": 50,
"isIcon": false,
"position": 1,
"additionalFields": [],
"isProductPreview": false
},
"currency_products": {
"type": "string",
"value": "usd",
"isIcon": false,
"position": 2,
"additionalFields": [],
"isProductPreview": false
},
"img": {
"type": "image",
"value": [],
"isIcon": false,
"position": 3,
"additionalFields": [],
"isProductPreview": false
}
},
"categories": [
"catalog"
],
"isVisible": true,
"isPositionLocked": false
},
{
"id": 2955,
"localizeInfos": {
"title": "Produit"
},
"statusIdentifier": "sale",
"statusLocalizeInfos": {
"title": "Vente"
},
"attributeSetIdentifier": null,
"position": 2,
"templateIdentifier": null,
"shortDescTemplateIdentifier": null,
"price": null,
"additional": {
"prices": {
"min": 50,
"max": 150
}
},
"sku": null,
"isSync": false,
"attributeValues": {},
"categories": [
"catalog"
],
"isVisible": true,
"isPositionLocked": false
},
{
"id": 2957,
"localizeInfos": {
"title": "Cosmo"
},
"statusIdentifier": "sale",
"statusLocalizeInfos": {
"title": "Vente"
},
"attributeSetIdentifier": "products",
"position": 3,
"templateIdentifier": null,
"shortDescTemplateIdentifier": null,
"price": 150,
"additional": {
"prices": {
"min": 50,
"max": 150
}
},
"sku": null,
"isSync": true,
"attributeValues": {
"product-name": {
"type": "string",
"value": "Cosmo",
"isIcon": false,
"position": 0,
"additionalFields": [],
"isProductPreview": false
},
"price": {
"type": "integer",
"value": 150,
"isIcon": false,
"position": 1,
"additionalFields": [],
"isProductPreview": false
},
"currency_products": {
"type": "string",
"value": "",
"isIcon": false,
"position": 2,
"additionalFields": [],
"isProductPreview": false
},
"img": {
"type": "image",
"value": [],
"isIcon": false,
"position": 3,
"additionalFields": [],
"isProductPreview": false
}
},
"categories": [
"catalog"
],
"isVisible": true,
"isPositionLocked": false
}
],
"total": 3
}
Schéma

total: number
Le nombre total de produits trouvés.
exemple : 100

items: IProductsEntity[]
Un tableau d'entités de produit.
exemple :

[
{
"id": 12345,
"title": "Produit 1"
},
{
"id": 67890,
"title": "Produit 2"
}
]