Introduction
Dans tous les moteurs de recherche modernes on a une autocompletion ou auto suggestion des mots lorsqu'on fait une recherche :
Cette autocompletion permet d'éviter les erreurs d'orthographe mais aussi de guider l'utilisateur dans la recherche qu'il va faire. Par défaut SharePoint créé son auto complétion au fur et à mesure en fonction des requêtes. Cela peut poser un problème si les requêtes faites ne donnent pas, ou peu de résultat et lorsque de nouveaux mots clés apparaissent ils ne sont pas pris en compte par le moteur de recherche. Avec PowerShell il y a la possibilité d'ajouter des mots clés et de les faire apparaitre de suite.
Ajout des mots clés
Prenons deux exemples de mots clé, Corps humain et anatomie, Si je lance une recherche sur l'un de ces mots clé voici la page d'accueil :
On va ajouter les mots clés. Pour cela on lance PowerShell pour SharePoint (en effet cette fonctionnalité bien que souvent mis en avant pour Fast est liée au Query SharePoint). Premièrement on récupère le service de Query courant :
$SSA=Get-SPEnterpriseSearchServiceApplication
Si vous avez plusieurs applications pour la recherche vous pouvez spécifier le nom de l'application spécifique que vous souhaitez récupérer (Ici c'est une identité Fast mais sous SharePoint cela fonctionne aussi):
$SSA=Get-SPEnterpriseSearchServiceApplication –Identity "Fast Search Query"
Puis sur le Query Services on ajoute les mots clé ici Anatomie et Corps Humain :
New-SPEnterpriseSearchLanguageResourcePhrase –SearchApplication $SSA –Language en-us –Type QuerySuggestionAlwaysSuggest –Name "Anatomie" New-SPEnterpriseSearchLanguageResourcePhrase –SearchApplication $SSA –Language en-us –Type QuerySuggestionAlwaysSuggest –Name "Corps Humain"
Le fait d'ajouter des mots clés les ajoute dans la liste d'exécution du timer job. Celui-ci tourne une fois par mois. Pour que le résultat apparaisse tout de suite il suffit d'ajouter :
Start-SPTimerJob –Identity "Prepare Query Suggestions"
Cela va forcer le timer job à compiler l'ensemble des query suggestion. Pour récupérer l'ensemble des Query Suggestion :
Get-SPEnterpriseSearchQuerySuggestionCandidates –SearchApplication $SSA
Pour supprimer une Query Suggestion :
Remove-SPEnterpriseSearchLanguageResourcePhrase –SearchApplication $SSA –Language en-us –Type QuerySuggestionAlwaysSuggest –Identity "Corps Humain"
Résultat :
Exemple : http://search.xvanneste.com












Marc (26/11/2010 - 23:53)
je suis l'ensemble de vos cours, j'ai essayé celui ci ca marche mais j'essaie de trouver une astuce pour effacer la totalité du querysuggestion mais je trouve pas.
jai mis dans un for each la commande :
Remove-SPEnterpriseSearchLanguageResourcePhrase –SearchApplication $SSA –Language en-us –Type QuerySuggestionAlwaysSuggest –Identity $maquery
cela me demande une confirmation d'effacement , -recurse marche pas
vous avez une astuce ?
merci