getWishlistSimilar
Obtenez des produits "similaires à la liste de souhaits" à partir de la liste de souhaits du contexte (utilisateur autorisé ou invité).
Description
Cette méthode renvoie des produits similaires à la liste de souhaits tirée du contexte actuel - un utilisateur autorisé ou un invité (résolu via l'en-tête x-guest-id, voir Mode invité). Elle renvoie une promesse qui se résout en un objet IProductsResponse - un conteneur avec items (les produits), total et totalFound - pas un tableau nu.
Blocks.getWishlistSimilar(
marker*,
langCode,
signPrice,
limit
);
Schéma des paramètres
Schéma
marker(obligatoire): string
Marqueur de bloc
exemple : "wishlist_similar_block"
langCode: string
Code de langue. Par défaut : "en_US"
exemple : "en_US"
signPrice: string
Marqueur de stockage de commande pour la fixation des prix. Si le paramètre est défini, le prix est fixé pour un certain temps
voir : Fixation du prix
limit: number
Nombre maximum de produits à renvoyer. Lorsqu'il est omis, le paramètre de quantité propre au bloc s'applique
exemple : 10
💲
signPriceverrouille le prix renvoyé pour une durée limitée — définissez-le sur votre marqueur de stockage de commande. Voir Fixation du prix (signPrice).
Exemples
Exemple minimal
const response = await Blocks.getWishlistSimilar('wishlist_similar_block');
Exemple avec des attributs
const response = await Blocks.getWishlistSimilar('wishlist_similar_block', 'en_US');
Exemple avec limite
const response = await Blocks.getWishlistSimilar('wishlist_similar_block', 'en_US', undefined, 4);
🔢
limitlimite le nombre de produits renvoyés. Omettez-le et le paramètre de quantité propre au bloc du panneau d'administration continue de s'appliquer. Voir Limitation du nombre de produits (limit).
Exemple de réponse
{
"items": [
{
"id": 2954,
"localizeInfos": {
"title": "Box"
},
"statusIdentifier": "sale",
"statusLocalizeInfos": {
"title": "Sale"
},
"attributeSetIdentifier": "products",
"position": 1,
"templateIdentifier": null,
"shortDescTemplateIdentifier": "product_preview",
"price": 51,
"additional": {
"prices": {
"min": 51,
"max": 180
}
},
"sku": null,
"isSync": true,
"attributeValues": {
"product-name": {
"type": "string",
"value": "product-name",
"isIcon": false,
"position": 0,
"additionalFields": {},
"isProductPreview": false
},
"price": {
"type": "integer",
"value": 51,
"isIcon": false,
"position": 1,
"additionalFields": {},
"isProductPreview": false
},
"currency_products": {
"type": "string",
"value": "usd",
"isIcon": false,
"position": 2,
"additionalFields": {},
"isProductPreview": false
},
"img": {
"type": "image",
"value": {
"size": 742690,
"filename": "files/project/product/2954/image/48853cbf-4462-42c6-8b99-d14f721c21a2.jpeg",
"contentType": "image/jpeg",
"previewLink": {
"default": [
"data:image/webp;base64,UklGRmwAAABXRUJQVlA4IGAAAADQAQCdASoQABAABUB8JbACdACZZ3P8AAD+wGsUXBs/r069WpdrcuaTNfVxqWIetuaIdIvOMkSp9iJRxE+KhA2YHbrVehhMRj/j5+DUdjWn1v5YtZ7vw0IgPi9R5vkAAAA=",
"https://your-project.oneentry.cloud/cloud-static/files/project/product/2954/image/48853cbf-4462-42c6-8b99-d14f721c21a2.preview.default.jpeg"
]
},
"downloadLink": "https://your-project.oneentry.cloud/cloud-static/files/project/product/2954/image/48853cbf-4462-42c6-8b99-d14f721c21a2.jpeg",
"defaultPreview": "default"
},
"isIcon": false,
"position": 3,
"additionalFields": {},
"isProductPreview": true
}
},
"categories": [
"catalog"
],
"rating": {},
"isVisible": true,
"moduleFormConfigs": [
{
"id": 12,
"formIdentifier": "review",
"moduleIdentifier": "catalog",
"isGlobal": false,
"isClosed": false,
"isModerate": false,
"viewOnlyMyData": false,
"commentOnlyMyData": false,
"entityIdentifiers": [
{
"id": "catalog",
"isNested": true
}
],
"formDataCount": 688,
"ratingCalculation": "average",
"allowHalfRatings": null,
"maxRatingScale": null,
"isAnonymous": null,
"allowRerating": null,
"isRating": null,
"entityFormDataCount": {
"2954": 688
},
"nestedEntityIdentifiers": [
"catalog"
],
"exceptionIds": []
}
],
"discountConfig": {}
}
],
"total": 1,
"totalFound": 1
}
Schéma de réponse
Schéma : IProductsResponse
total: number
Le nombre total de produits trouvés.
exemple : 100
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 page produit (peut être nul).
exemple : "in_stock"
items.statusLocalizeInfos: ILocalizeInfo
Nom de statut localisé pour le produit.
exemple :
{ "title": "Sale" }
items.attributeSetIdentifier: string | null
Identifiant de l'ensemble d'attributs.
exemple : "set_12345"
items.position: number
Numéro d'élément (pour le tri).
exemple : 1
items.price: number | null
La valeur du prix de la page produit tirée de 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 nul.
exemple : "SKU_12345"
items.isSync: boolean
Indication de l'indexation de la page.
exemple : true
items.attributeValues: IAttributeValues
Tableau de valeurs d'attributs de l'index, représenté.
exemple :
[
{
"id": "color",
"value": "red"
}
]
items.categories: string[]
Catégories de produits.
exemple :
[
1,
2,
3
]
items.isVisible: boolean
Indication de la visibilité de la page.
exemple : true
items.moduleFormConfigs: Array<IFormConfig>
Configurations de formulaire 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[]
Identifiants des pages de produits connexes.
exemple :
[
12345,
67890
]
items.paymentStages: unknown
Données des étapes de paiement (peut être nul).
exemple : null
items.distance: number
Distance de pertinence de recherche vectorielle (sémantique). Présente uniquement dans les résultats de recherche vectorielle.
exemple : 0.42
items.discountConfig: Record<string, unknown>
Objet de configuration de remise.
exemple :
{}
items.templateIdentifier: string | null
Identifiant utilisateur du modèle lié.
exemple : "template_12345"
items.shortDescTemplateIdentifier: string | null
Identifiant utilisateur du modèle lié pour une courte description.
exemple : "short_desc_template_12345"
items.signedPrice: string
Le prix signé du produit est obtenu avec les données du produit lorsque signPrice est défini.
voir : Prix fixe du produit
exemple : "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9..."
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"
}
]
items.blocks: string[]
Tableau d'identifiants de blocs.
exemple :
[
"block_12345",
"block_67890"
]
totalFound: number
Nombre de produits correspondants avant l'application des limites ; renvoyé par les points de terminaison de produits de bloc (similarProducts, recommandations de panier/liste de souhaits, commandes fréquentes). Optionnel.
exemple : 2
🔒
signedPriceest le jeton signé qui porte le prix verrouillé — renvoyez-le lorsque vous créez une commande. Voir Prix fixe du produit (signedPrice).