Les display template dans la recherche SharePoint

Lorsqu'on travaille avec SharePoint, on est souvent confronté à la problématique d’ajouter des métadonnées métiers aux résultats de recherche afin d’enrichir l’expérience utilisateur, pour ce faire il y a plusieurs méthodes mais je parlerai ici de l’utilisation des Display Templates qui existent depuis la version 2010 de SharePoint et qu’on retrouve sur la version Online.

La recherche dans SharePoint

Par défaut, les éléments stockés dans les bases de données de contenus issus de liste ou de bibliothèque de documents comportent un certain nombre de colonnes. Lors du crawl, le service de recherche ajoute ces colonnes dans la base d’index qu’on peut ensuite qualifier de propriétés gérées (devenu schéma de recherche dans la version 2013).

Lors d’une recherche, le service d’index interroge la base et renvoie les résultats qui sont affichés grâce aux display templates qui vont définir les propriétés à afficher ainsi que leur format.

clip_image002

Qu’est-ce qu’un display template ?

Ce sont des fichiers HTML utilisés afin d’effectuer le rendu d’un affichage, ici celui des résultats de recherche. Ils sont situés dans les paramètres du site, dans la section pages maitres et mises en page dans le répertoire Display templates. Lorsque vous ajoutez votre propre modèle, vous constaterez qu’un fichier js ayant le même nom est généré automatiquement.

Dans le cas qui nous intéresse (la recherche clip_image003) trois nous intéressent plus particulièrement :

· control display templates: c’est la structure générale des résultats de recherche telle que le header ou le pied de page (la numérotation et les flèches suivant/précédent), on y trouve également le message indiquant qu’aucun résultat n’a été trouvé.

· item result templates : il définit l’affichage d’un élément de résultat, c’est le fichier qui indique quelles métadonnées doivent être rendues à l’écran et le format de l’affichage.

· hover panel template: grâce à ce fichier vous pourrez modifier l’affichage de la « popin » de prévisualisation (appelée call-out).

clip_image005

Personnaliser sa recherche

Afin de personnaliser ses résultats de recherches, la première étape consiste à repérer le style d’affichage qui correspond le plus à celui attendu au final puis de copier/coller le fichier html correspondant clip_image006

Je vais ici prendre le fichier correspondant à l’affichage des personnes qui contient de nombreuses métadonnées et un affichage bien particulier.

Les métadonnées sont récupérées en début de fichier afin d’être utilisées dans la suite pendant le rendu:

clip_image008

Il suffit ensuite d’utiliser cette variable dans une balise HTML de votre choix et de formater vos résultats comme bon vous semble :

clip_image010

clip_image011REMARQUE : si vous ajoutez une nouvelle propriété gérée dans votre display template sur un serveur on premise, vous obtiendrez une erreur lors de son utilisation ; vous devrez d’abord re-synchroniser les propriétés en allant dans les Paramètres du site –> Types de résultats. Vous verrez alors un bandeau jaune vous proposant de mettre à jour les types de résultat.

Pour plus de détails en anglais :

https://blogs.technet.microsoft.com/tothesharepoint/2013/09/06/how-to-display-values-from-custom-managed-properties-in-search-results-option-1/

https://blogs.technet.microsoft.com/tothesharepoint/2013/08/27/how-to-change-the-way-search-results-are-displayed-in-sharepoint-server-2013/

Ces billets pourraient aussi vous intéresser

Vous nous direz ?!

Commentaires

comments powered by Disqus