Pour fournir des résultats de recherche appropriés pour une requête utilisateur, vous devez parfois modifier la requête. Par exemple, supposons que vous créiez une verticale de recherche pour images. Lorsque quelqu’un tape une requête dans la verticale Images, vous devez modifier la requête afin qu’elle renvoie uniquement les résultats de recherche qui sont des images.
Pour modifier une requête, vous utilisez le Générateur de requêtes pour configurer une transformation de requête. Vous pouvez configurer une transformation de requête pour remplacer les propriétés d’une requête, telles que la source de résultat que la requête utilisera pour obtenir les résultats de la recherche ou l’ordre de tri qu’elle utilisera lorsqu’elle affichera les résultats de la recherche. La transformation remplace également le texte de la requête à l’aide d’un modèle de requête que vous pouvez configurer. Le modèle de requête est le texte qui remplacera le texte de la requête, et le modèle peut contenir des variables de requête.
Une variable de requête est un espace réservé pour une valeur. Lorsqu’une transformation remplace le texte d’une requête par son modèle de requête, elle remplace également les variables de requête dans le modèle par des valeurs spécifiques.
Une transformation remplace les variables de requête contextuelle par des valeurs relatives au contexte de la requête. Le tableau suivant présente quelques exemples de variables de requête contextuelle.
| Une transformation remplace cette variable de requête contextuelle | Avec ce |
|---|---|
| {User.Name} | Nom de l’utilisateur qui a tapé la requête |
| {Site.URL} | Site sur lequel l’utilisateur a tapé la valeur |
| {Aujourd’hui} | Date du jour |
Une transformation remplace les variables de requête liées par un certain texte qui se trouve dans la requête de l’utilisateur. Le tableau suivant présente quelques exemples de variables de requête liées.
| Une transformation remplace cette variable de requête liée | Avec ce |
|---|---|
| {searchBoxQuery} | Requête tapée par l’utilisateur |
| {searchTerms} | Requête tapée par l’utilisateur, telle que modifiée par la transformation la plus récente |
Vous pouvez utiliser une variable de requête liée lorsque vous ajoutez une restriction à une requête, par exemple lorsque vous limitez une requête à un type de contenu particulier. Par exemple, pour une verticale de recherche d’images, vous pouvez configurer une transformation de requête qui ajoute « contenttype :picture » au texte de la requête à l’aide du modèle de requête « {searchTerms} contenttype :picture ». Si un utilisateur tape la requête « moon » dans cette verticale, la transformation remplace « {searchTerms} » par « moon ». Ainsi, la transformation de requête remplace la requête par « moon contenttype :picture ».
Vous pouvez configurer les transformations de requête à trois emplacements :
Dans un composant WebPart, tel qu’un composant WebPart Résultats de recherche. Configurez une transformation dans un composant WebPart lorsque vous n’avez pas besoin d’apporter les mêmes modifications aux requêtes ailleurs.
Dans une règle de requête, qui spécifie que certaines actions ne seront effectuées que si certaines conditions sont satisfaites. Deux de ces actions utilisent une transformation pour modifier la requête :
- Ajoutez un bloc de résultats sur la page des résultats de la recherche. Cette action crée une copie de la requête, et sa transformation modifie uniquement la copie.
- Modifier les résultats classés. Cette action modifie la requête tapée par l’utilisateur.
Dans la source des résultats que la requête utilise pour obtenir les résultats de la recherche.
Une requête utilisateur est transformée par le composant WebPart, puis par toutes les règles de requête qui s’appliquent, et enfin par la source de résultat. Par conséquent, lorsque vous configurez une transformation dans une source de résultats, vous savez que les modifications apportées à la transformation ne seront pas supprimées ou remplacées, car la source de résultat transforme la requête en dernier. Par exemple, pour vous assurer qu’une verticale de recherche d’images renvoie uniquement des images, vous devez configurer la transformation appropriée dans une source de résultats, puis configurer le composant WebPart dans la verticale de recherche pour utiliser cette source de résultat.
Pour plus d’informations, voir Vue d’ensemble du traitement des requêtes sur TechNet.
Haut de la page