Einer unserer Kunden hatte kürzlich Anforderungen an die Suchergebnisseite von SharePoint Teamsites, die über die Standardfunktionalität nicht abgedeckt werden können. Über die Suchergebnisseite möchte der Kunde seine Suchanfrage direkt auf die Personensuche oder die erweiterte Suche eines Search Centers durchreichen. Aus diesem Grund habe ich eine schlanke Lösung implementiert, die diese Anforderungen via Feature-Aktivierung ermöglicht.
Nach dem Aktivieren des Features wird ein neuer Menüpunkt unter den Websitessammlungs-Einststellungen hinzugefügt.
Über diesen zusätzlich Link ist eine eigenen Konfigurationsseite erreichbar, auf der die URL zu dem zugewiesenen Search Center angegeben werden kann.
Zusätzlich zu dieser neuen Konfigurationsseite wird eine eigene Suchergebnisseite in das 14 Hive-Verzeichnis ausgerollt und für die jeweilige Websitesammlung registriert. Diese ist danach in den Sucheinstellungen einsehbar.
Um diese erweiterte Suchergebnisseite in einem Feature Event Receiver zu registrieren, ist folgender Code erforderlich.
public override void FeatureActivated(SPFeatureReceiverProperties properties) { SPSite site = properties.Feature.Parent as SPSite; if (site != null) { site.RootWeb.AllProperties["SRCH_TRAGET_RESULTS_PAGE"] = site.RootWeb.Url+"/_layouts/searchresults.aspx"; //don't overwrite existing entry if (!site.RootWeb.AllProperties.ContainsKey("SRCH_CENTER_URL")) { site.RootWeb.AllProperties["SRCH_CENTER_URL"] = http://<Search Center-URL>; } site.RootWeb.Update(); } } public override void FeatureDeactivating(SPFeatureReceiverProperties properties) { SPSite site = properties.Feature.Parent as SPSite; if (site != null) { site.RootWeb.AllProperties["SRCH_TRAGET_RESULTS_PAGE"] = "/_layouts/OSSSearchResults.aspx"; site.RootWeb.Update(); } }
Durch das Registrieren der eigenen Suchergebnisseite wird nun diese beim Ausführen einer Suchanfrage aufgerufen. Die neue Suchergebnisseite hat in diesem Fall zusätzliche Reiter, die direkt auf die Teilbereiche des konfigurierten Such Center verweisen und die Suchkriterien dorthin durchreichen.
Diese schlanke Lösung beweist wiedermal, dass bereits minimale Erweiterungen einen großen Mehrwert ausmachen können.
Pingback: Aus der Praxis – Suchseite bei Teamsites optimieren - SharePoint Blogs in German - Bamboo Nation