getProductsByIds
Récupération de plusieurs produits par leurs identifiants.
Produits?.getProductsByIds( ids?, langCode?, userQuery? );
const value = await Products.getProductsByIds('1, 5, 8', 'en_US')
Exemple minimal
Schéma
ids: string
Identifiants de la page produit pour lesquels trouver des relations
exemple : "12345,67890"
langCode: string
Code de langue. Par défaut "en_US"
userQuery: IProductsQuery
Paramètres de requête optionnels
exemple :
{
"offset": 0,
"limit": 30,
"sortOrder": "DESC",
"sortKey": "id"
}
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 récupère des objets produits en fonction de leurs identifiants (ids) depuis l'API. Elle renvoie une promesse qui se résout en objets IProductsEntity pour le produit.
Exemple de réponse
[
{
"id": 2954,
"localizeInfos": {
"title": "Boîte"
},
"statusIdentifier": "vente",
"statusLocalizeInfos": {
"title": "Vente"
},
"attributeSetIdentifier": "produits",
"position": 2,
"templateIdentifier": null,
"shortDescTemplateIdentifier": "product_preview",
"price": 50,
"additional": {
"prices": {
"min": 50,
"max": 150
}
},
"sku": null,
"isSync": true,
"attributeValues": {
"product-name": {
"type": "string",
"value": "nom-du-produit",
"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": [
"catalogue"
],
"isVisible": true,
"productPages": [
{
"id": 2847,
"pageId": 10,
"productId": 2954,
"positionId": 3190,
"categoryPath": "catalogue"
}
],
"blocks": [
"product_block",
"product_block"
]
},
{
"id": 2955,
"localizeInfos": {
"title": "Produit"
},
"statusIdentifier": "vente",
"statusLocalizeInfos": {
"title": "Vente"
},
"attributeSetIdentifier": null,
"position": 1,
"templateIdentifier": null,
"shortDescTemplateIdentifier": null,
"price": null,
"additional": {
"prices": {
"min": 50,
"max": 150
}
},
"sku": null,
"isSync": false,
"attributeValues": {},
"categories": [
"catalogue"
],
"isVisible": true,
"productPages": [
{
"id": 2848,
"pageId": 10,
"productId": 2955,
"positionId": 3191,
"categoryPath": "catalogue"
}
],
"blocks": [
"product_block",
"product_block"
]
}
]
Schéma
id: number
L'identifiant unique.
exemple : 12345
localizeInfos: ILocalizeInfo
Le nom des produits, en tenant compte de la localisation.
statusIdentifier: string | null
Identifiants de statut de page produit (peut être null).
exemple : "in_stock"
statusLocalizeInfos: any
Description JSON de l'objet statut de l'élément, en tenant compte de la langue.
attributeSetIdentifier: string | null
Ensemble d'identifiants d'attributs.
exemple : "set_12345"
position: number
Numéro de l'élément (pour le tri).
exemple : 1
templateIdentifier: string | null
Identifiant utilisateur du modèle lié.
exemple : "template_12345"
shortDescTemplateIdentifier: string | null
Identifiant utilisateur du modèle lié pour une courte description.
exemple : "short_desc_template_12345"
price: number
La valeur du prix de la page produit prise de l'index.
exemple : 150
additional: object
Valeur supplémentaire de l'index.
sku: string | null
SKU du produit (Stock Keeping Unit), peut être null.
exemple : "SKU_12345"
isSync: boolean
Indication de l'indexation de la page.
exemple : true
attributeValues: AttributeType
Tableau des valeurs d'attributs de l'index, représenté.
exemple :
[
{
"id": "color",
"value": "rouge"
}
]
categories: string[]
Catégories de produits.
exemple :
[
1,
2,
3
]
isVisible: boolean
Un signe de visibilité de la page.
exemple : true
productPages: any[]
Tableau de pages produits ou un seul objet de page produit.
blocks: string[]
Tableau d'identifiants de blocs.
isPositionLocked: boolean
Indicateur de verrouillage de position de tri (optionnel).
exemple : false
relatedIds: number[]
Identifiants des pages produits associées.
exemple :
[
12345,
67890
]