SharePoint – Sucherergebnisreihenfolge und -bewertung beeinflussen

Innerhalb eines Projektes bin ich auf folgende Herausforderung in SharePoint gestoßen.

Wie schaffe ich es Personensuchergebnisse, die ich mit einem Inhaltssuche (Content Search) Webpart anzeigen lasse, in eine erzwungene Reihenfolge zu bringen? Die Lösung hierfür möchte ich euch gerne einmal vorstellen.

Meine Suchanfrage besteht aus drei Seitenfeldern (amxContact, amxAddtionalContact und amxSecondAddtionalContact), die dynamisch eine Suchabfrage bilden.  (Es müssen an dieser Stelle 3 Personenfelder sein, da Multi-Personenfelder nicht unterstützt werden.)

 

Meine erste Suchabfrage sah wie folgt aus:

{Page.amxContact} OR {Page.amxAdditionalContact} OR {Page.SecondamxAdditionalContact}

Im Standard wird jetzt nach dem Rank sortiert. Ich kann die Ergebnisse beispielsweise auch alphabetisch nach dem Namen sortieren lassen. Wie bereits gesagt möchte ich aber eine feste Reihenfolge erzwingen und zwar in der Reihenfolge, wie ich Sie auf meiner Publishing Page hinterlegt habe.

Hierfür habe ich den dynamischen Rangfolge-Operator XRANK genutzt. Hiermit ist es möglich den Suchbegriffen eine höhere Gewichtung zu geben und ich kann somit absteigend nach dem Rank sortieren. Die Suchabfrage für meine Lösung sieht dann wie folgt aus:

(({Page.amxContact} OR {Page.amxAdditionalContact} OR {Page.amxSecondAdditionalContact}) XRANK(cb=300) WorkEmail:{Page.amxContact}) XRANK(cb=200) WorkEmail:{Page.amxAdditionalContact} XRANK(cb=100) WorkEmail:{Page.amxSecondAdditionalContact}

Die Gewichtung erfolgt anhand der eindeutigen geschäftlichen E-Mail Adresse.

Das Ergebnis könnte dann wie folgt aussehen:

Anbei ein Link zur Syntaxreferenz für KQL von Microsoft:

https://docs.microsoft.com/de-de/sharepoint/dev/general-development/keyword-query-language-kql-syntax-reference

Leave a Comment

Your email address will not be published. Required fields are marked *