Aller au contenu principal

getProductsByPageUrl

Recherchez tous les objets produits avec pagination pour la catégorie sélectionnée (par son URL).

Produits?.getProductsByPageUrl( url?, 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": ""?
}
]

const value = await Produits.getProductsByPageUrl('catalog', body)
Schéma

url(required): string
URL de la page
exemple : "catalog"

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 de statut de 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 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": 3,
"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": 1,
"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 produits.
exemple :

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