Aller au contenu principal

searchPage

Recherche rapide d'objets de page avec une sortie limitée.

Description

Cette méthode effectue une recherche rapide d'objets de page basée sur une requête textuelle (nom). Elle renvoie une promesse qui se résout en un tableau d'objets IPagesEntity ou un tableau vide [].

Pages.searchPage(

name*, url, langCode

);

Schéma des paramètres

Schéma

name(obligatoire): string
Texte pour rechercher des objets de page (la recherche est effectuée sur le champ titre de l'objet localizeInfos en tenant compte de la langue)
exemple : "À propos de nous"

url: string
URL de la page
exemple : "catalogue"

langCode: string
Code de langue. Par défaut : "en_US"
exemple : "en_US"

Exemples

Exemple minimal

const response = await Pages.searchPage('tasse');

Exemple avec des attributs

const response = await Pages.searchPage('tasse', 'en_US');

Exemple de réponse

[
{
"id": 10,
"parentId": null,
"pageUrl": "catalog",
"depth": 0,
"localizeInfos": {
"title": "Catalogue",
"menuTitle": "Catalogue",
"htmlContent": "",
"plainContent": ""
},
"isVisible": true,
"blocks": [
"product_block",
"test"
],
"type": "catalog_page",
"templateIdentifier": "template",
"attributeSetIdentifier": "page",
"attributeValues": {
"text": {
"type": "string",
"value": "texte du catalogue",
"position": 0,
"additionalFields": []
},
"number": {
"type": "integer",
"value": 0,
"position": 1,
"additionalFields": []
},
"real": {
"type": "real",
"value": "",
"position": 2,
"additionalFields": []
},
"float": {
"type": "float",
"value": 0,
"position": 3,
"additionalFields": []
}
},
"moduleFormConfigs": [],
"isSync": true,
"template": {
"id": 4,
"attributeSetIdentifier": null,
"title": "Modèle",
"generalTypeId": 4,
"identifier": "template",
"version": 0,
"generalTypeName": "catalog_page",
"attributeValues": {},
"position": 1
}
}
]

Schéma de réponse

Schéma : IPagesEntity[]

id: number
L'identifiant de l'objet.
exemple : 8

parentId: number | null
L'id de la page parente, s'il contient null, alors c'est la page de niveau supérieur.
exemple : 10

pageUrl: string
URL unique de la page.
exemple : "blog"

depth: number
Profondeur d'imbrication de la page par rapport à parentId.
exemple : 10

localizeInfos: ILocalizeInfo
Le nom de la page, en tenant compte de la localisation.
exemple :

{
"title": "Blog",
"menuTitle": "Blog",
"htmlContent": "",
"plainContent": ""
}

isVisible: boolean
Un indicateur de visibilité de la page.
exemple : true

type: Types
Type de page.
exemple :

"common_page"

templateIdentifier: string | null
Id utilisateur du modèle lié.
exemple : "template"

attributeSetIdentifier: string | null
Id de l'ensemble d'attributs.
exemple : "page"

attributeValues: AttributeType
Tableau des valeurs d'attributs de l'index (représenté comme une paire d'id d'attribut utilisateur : valeur d'attribut).
exemple :

{
"text": {
"type": "string",
"value": "quelques textes",
"position": 0,
"additionalFields": []
}
}

isSync: boolean
Indication de l'indexation de la page.
exemple : true

template: any
Objet modèle.

position: number
Numéro de l'élément (pour le tri).
exemple : 2

config: any
Paramètres de sortie pour les pages de catalogue.
exemple :

{
"rowsPerPage": 1,
"productsPerRow": 1
}

products: number
Le nombre de produits liés à la page.
exemple : 0

childrenCount: number
Nombre d'enfants.
exemple : 1