Aller au contenu principal

getRecentlyViewed

Obtenez les produits récemment consultés.

Description

Cette méthode renvoie les produits récemment consultés par le contexte actuel - un utilisateur autorisé ou un invité (résolu via l'en-tête x-guest-id, voir Mode invité). La liste est construite à partir de l'activité utilisateur suivie. Elle renvoie une Promise qui se résout en un objet IProductsResponse - un conteneur avec items (les produits), total et totalFound - et non un tableau brut.

Blocks.getRecentlyViewed(

marker*, langCode, signPrice, limit

);

Schéma des paramètres

Schéma

marker(obligatoire): string
Marqueur de bloc
exemple : "recently_viewed_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

💲 signPrice verrouille 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.getRecentlyViewed('recently_viewed_block');

Exemple avec des attributs

const response = await Blocks.getRecentlyViewed('recently_viewed_block', 'en_US');

Exemple avec limite

const response = await Blocks.getRecentlyViewed('recently_viewed_block', 'en_US', undefined, 4);

🔢 limit limite 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": [],
"total": 0
}

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'article (pour le tri).
exemple : 1

items.price: number | null
La valeur du prix de la page produit prise dans 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 des valeurs d'attributs de l'index, représentées.
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 (facultatif).

items.rating: IRating
Données d'évaluation.

items.isPositionLocked: boolean
Indicateur de verrouillage de la position de tri (facultatif).
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). Facultatif.
exemple : 2

🔒 signedPrice est le jeton signé qui porte le prix verrouillé — renvoyez-le lorsque vous créez une commande. Voir Prix fixe du produit (signedPrice).