Von vielen Webseiten kennt man Suchanbieter, die sich in das kleine Suchfenster aller gängigen Browser integrieren lassen. Mit diesen Suchanbietern kann auf der entsprechenden Webseite gesucht werden, auch wenn man sich gerade nicht auf dieser Webseite befindet. Dabei macht der Suchanbieter nichts anderes, als die bereits vorhandene Query-URL der Webseite aufzurufen und das gesuchte Wort an diese URL zu übergeben. Bei den meisten dynamischen Webseiten ist so eine Suchseite schon vorhanden. Hier zum Beispiel die URL für dotnet-snippets.de:
http://dotnet-snippets.de/dns/Default.aspx?query=Mathe
Um die Suchseite und den Browser zusammen zu bringen hat Amazon.com bzw. A9.com die OpenSearch Technik entwickelt. Die Integration dieser Technik in eigene Seiten ist einfach.
Als erstes legt man eine XML Datei mit dem folgenden Inhalt an.
<?xml version="1.0" encoding="UTF-8" ?>
<OpenSearchDescription xmlns="http://a9.com/-/spec/opensearch/1.1/">
<ShortName>dotnet-snippets.de</ShortName>
<Description>Search .net Codesnippets</Description>
<Image>src="http://www.dotnet-snippets.de/dns/bilder/net.ico"</Image>
<Url type="text/html" template="http://dotnet-nippets.de/dns/default.aspx?query={searchTerms}" />
</OpenSearchDescription>
Diese Datei enthält die folgenden Parameter, die für dotnet-snippets.de gültig sind. Diese sollten für die eigene Webseite angepasst werden. Ich habe die Parameter als Beispiel drin gelassen.
ShortName: Eine kurze Beschreibung, zB. der Name der Webseite
Description: eine Beschreibung, die aussagt was auf der Webseite zu finden ist
Image: eine URL zu einem so genannten FavIcon, ein Icon welches 16x16 Pixel groß sein sollte
(Diese FavIcons kann man sehr komfortabel hier kostenlos erstellen: http://www.favicon-generator.de/)
Url type: Das ist die URL der Suchseite mit dem Platzhalter {searchTerms}. In diesen Platzhalter fügt dann der Suchanbieter den gesuchten Text ein.
Nach dem Hochladen dieser XML Datei auf den Webserver muss die Datei noch verlinkt werden. Den Link platziert man im Head der Webseite:
<link title="dotnet-snippets.de - Suche" type="application/opensearchdescription+xml" rel="search" href="http://dotnet-snippets.de/dns/Tools/dns.xml" />
Der Title und der href muss hier wieder individuell angepasst werden. Verwendet man eine ASP.NET Masterpage, sollte der Link im Head der Masterpage positioniert werden.
Wurde die XML Datei richtig verlinkt, erkennt nun der Browser den Suchanbieter und zeigt dies an:
Möchte man den Besucher der Webseite auf den Suchanbieter hinweisen, kann man einen Link anbieten, um den Suchanbieter zu installieren:
<a href="javascript:window.external.AddSearchProvider("URL zur XML Datei");" onclick="">Suchprovider installieren</a>
Weiterführende Informationen und optionale Parameter für die XML Datei befinden sich auf der Webseite von opensearch.org und in der MSDN.
Ich denke, das ist eine sinnvolle Ergänzung für jede dynamische Webseite, die kaum Arbeit kostet.