getProductsByPageId
Rechercher tous les objets produits avec pagination pour la catégorie sélectionnée
Products.getProductsByPageId(id, body, langCode, userQuery)
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 Products.getProductsByPageId(1764, body);
Schéma
id:* nombre
ID de la page
exemple : 1
body: IFilterParams[]
Corps de la requête
exemple : []
langCode: chaîne
Paramètre de code de langue. Par défaut "en_US"
exemple : en_US
userQuery: IProductsQuery
Paramètres de requête optionnels.
exemple :
userQuery.offset: nombre
Paramètre optionnel pour la pagination, par défaut 0
exemple : 0
userQuery.limit: nombre
Paramètre optionnel pour la pagination, par défaut 30
exemple : 30
userQuery.statusMarker: chaîne
Identifiant optionnel du statut de la page produit
exemple : waiting
userQuery.conditionValue: chaîne
Valeur optionnelle recherchée
exemple : 1
userQuery.conditionMarker: chaîne
Identifiant optionnel de la condition de filtre par laquelle les valeurs sont filtrées
exemple : mth
userQuery.attributeMarker: chaîne
Identifiant textuel optionnel de l'attribut indexé par lequel les valeurs sont filtrées
exemple : price
userQuery.sortOrder: chaîne
Ordre de tri optionnel DESC | ASC
exemple : DESC
userQuery.sortKey: chaîne
Champ optionnel pour trier (id, title, date, price, position, status)
exemple : id
Schéma (body)
attributeMarker: chaîne
identifiant textuel de l'attribut
exemple : price
conditionMarker: chaîne
identifiant textuel de la condition
exemple : in
statusMarker: chaîne
identifiant textuel du statut de la page produit (par défaut non défini)
exemple : status_1
conditionValue: nombre
valeur de condition
exemple : 1
pageUrls: Array<string>
partie unique de l'URL de la page (après le dernier "/")
title: chaîne
exemple : Iphone 17 Pro
nom du produit
isNested: booléen
indicateur de recherche pour toutes les catégories imbriquées (pageUrls)
exemple : false
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 retour :
{
"total": 100,
"items": [
{
"id": 2,
"localizeInfos": {
"title": "Boîte"
},
"statusIdentifier": "sold",
"statusLocalizeInfos": {
"title": "Vendu"
},
"attributeSetIdentifier": "products",
"position": 3,
"templateIdentifier": null,
"isPositionLocked": false,
"shortDescTemplateIdentifier": null,
"price": 148,
"additional": {
"prices": {
"min": 120,
"max": 150
}
},
"sku": null,
"isSync": true,
"attributeValues": {
"price": {
"type": "integer",
"value": 148,
"position": 1,
"isProductPreview": false
},
"product-name": {
"type": "string",
"value": "Texte de la boîte",
"position": 0,
"isProductPreview": false
},
"currency_products": {
"type": "string",
"value": "$",
"position": 2,
"isProductPreview": false
}
},
"isVisible": true,
"isPositionLocked": false
}
]
}
Schéma
total: nombre
nombre total d'enregistrements trouvés
exemple : 100
id: nombre
identifiant de l'objet
exemple : 1764
additional: Record<string, any>
valeur supplémentaire de l'index
exemple :
{
"prices": {
"min": 0,
"max": 100
}
}
statusLocalizeInfos: CommonLocalizeInfos
description json de l'objet statut de l'élément, en tenant compte de la langue
exemple :
{ "title": "Produit" }
localizeInfos: Record<string, any>
description json de l'objet de données de la page principale en tenant compte de la langue "en_US" (par exemple)
exemple :
{
"en_US": {
"title": "Catalogue",
"plainContent": "Contenu pour le catalogue",
"htmlContent": "<b>Contenu pour le catalogue</b>",
"menuTitle": "Catalogue"
}
}
isVisible: booléen
Indicateur de visibilité de la page
exemple : true
position: nombre
numéro de position (pour le tri)
exemple : 192
templateIdentifier: chaîne
identifiant personnalisé du modèle associé
exemple : my-template
attributeSetId: nombre
identifiant de l'ensemble d'attributs
exemple : 7
blocks: tableau
blocs de produits
exemple : ['product_block']
isSync: booléen
indicateur d'indexation de la page (true ou false)
exemple : false
attributeValues: Record<string, string>
Tableau des valeurs d'attributs de l'index (présenté sous forme de paire d'identifiant d'attribut personnalisé : valeur d'attribut)
exemple :
{
"en_US": {
"marker": {
"value": "",
"type": "string"
}
}
}
statusId: nombre
identifiants de statut de la page produit (peut être nul)
exemple : 1
sku: chaîne
valeur SKU du produit prise de l'index
exemple : 1
relatedIds: tableau
identifiants des pages de produits connexes
exemple :
[ 1, 2, 3 ]
price: nombre
valeur du prix de la page produit prise de l'index
exemple : 0
templateIdentifier chaîne
identifiant personnalisé du modèle associé
exemple : my-template
shortDescTemplateIdentifier chaîne
identifiant personnalisé du modèle associé pour la description courte
exemple : my-template-short