getBlockByMarker
Obtenir un objet de bloc unique par marqueur.
Description
Cette méthode retourne un objet de bloc par marqueur. Elle renvoie une promesse qui se résout en un objet IBlockEntity.
Blocks.getBlockByMarker(
marker*,
langCode,
offset,
limit
);
Schéma des paramètres
Schéma
marker(obligatoire) : string
Marqueur du bloc
exemple : "product_block"
langCode : string
Code de langue. Par défaut : "en_US"
exemple : "en_US"
offset : number
Paramètre pour la pagination. Par défaut : 0
exemple : 0
limit : number
Paramètre pour la pagination. Par défaut : 30
exemple : 30
Par défaut, vous pouvez récupérer 10 objets. Cela est dû à la limite d'enregistrement dans les paramètres de permissions du module.
Pour que la pagination fonctionne correctement, vous devez configurer les permissions du module selon vos besoins dans la section correspondante.
Exemples
Exemple minimal
const response = await Blocks.getBlockByMarker('my-marker');
Exemple avec des attributs
const response = await Blocks.getBlockByMarker('my-marker', 'en_US', 0, 30);
Exemple de réponse
{
"id": 3,
"localizeInfos": {
"title": "Block"
},
"version": 0,
"position": 1,
"identifier": "block",
"type": "common_block",
"templateIdentifier": null,
"isVisible": true,
"attributeValues": {}
}
Schéma de réponse
Schéma : IBlockEntity
attributeValues : IAttributeValues
Carte des valeurs d'attributs indexées par marqueur ; objet vide s'il n'y en a pas.
exemple :
{
"block-text": {
"type": "string",
"value": "some text",
"isIcon": false,
"position": 0,
"additionalFields": [],
"isProductPreview": false
}
}
id : number
Identifiant unique du bloc.
exemple : 1234
localizeInfos : ILocalizeInfo
Informations de localisation pour le bloc.
exemple :
{
"key": "value"
}
version : number
Version de l'entité de bloc.
exemple : 1
identifier : string
Identifiant unique sous forme de chaîne pour le bloc.
exemple : "block1"
type : BlockType
Type du bloc.
exemple : "product"
position : number
Position du bloc pour le tri.
exemple : 1
templateIdentifier : string | null
Identifiant du modèle utilisé par le bloc, ou null si non applicable.
exemple : "template1"
isVisible : boolean
Indique si le bloc est visible.
exemple : true
countElementsPerRow : number
Nombre d'éléments affichés par ligne dans le bloc, si applicable.
exemple : 3
quantity : number
Quantité d'articles dans le bloc, si applicable.
exemple : 5
similarProducts : IProductsResponse
Réponse contenant des produits similaires associés au bloc.
exemple :
{
"total": 10,
"items": []
}
similarProducts.total : number
Le nombre total de produits trouvés.
exemple : 100
similarProducts.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 la page produit (peut être null).
exemple : "in_stock"
items.statusLocalizeInfos : ILocalizeInfo
Nom de statut localisé pour le produit.
exemple : { "title": "Vente" }
items.attributeSetIdentifier : string | null
Identifiant de l'ensemble d'attributs.
exemple : "set_12345"
items.position : number
Numéro de l'article (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 null.
exemple : "SKU_12345"
items.isSync : boolean
Indication de l'indexation de la page.
exemple : true
items.attributeValues : AttributeType
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
Un signe de visibilité de la page.
exemple : true
items.moduleFormConfigs : Array<IFormConfig>
Configurations de formulaires 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 null).
exemple : null
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
Signe du prix.
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"
}
]
productPages.id : number
Identifiant unique de l'enregistrement de lien produit-page.
exemple : 16
productPages.pageId : number
Identifiant de la page à laquelle le produit est lié.
exemple : 4
productPages.productId : number
Identifiant du produit.
exemple : 15
productPages.positionId : number
Identifiant de position de tri au sein de la page.
exemple : 244
productPages.categoryPath : string
Chemin de catégorie de la page à laquelle appartient le produit.
exemple : "products"
items.blocks : string[]
Tableau d'identifiants de blocs.
exemple :
[
"block_12345",
"block_67890"
]
products : IProductsEntity[]
Tableau d'entités de produits associées au bloc.
exemple :
[
{
"id": 1,
"name": "Product 1"
},
{
"id": 2,
"name": "Product 2"
}
]