在网站上添加了 OpenSearch 功能以后,IE 7.0 和 Firefox 2.0 以上的浏览器(好吧,我承认在 Opera 和 Chrome 里没找到这个功能,但是 IE 8.0 RC 和 Firefox 3.05 是绝对没有问题的)就能够在自带的搜索栏里面添加这个网站的搜索功能了。
要添加 OpenSearch 功能,一共分三步:
第一步:实现 OpenSearch 功能;
第二步:编写 OpenSearch 描述文件;
第三步:添加对 OpenSearch 描述文件的引用。
那么,下来就开始吧:
第一步:实现 OpenSearch 功能。
这一个最简单,如果原来就有搜索,只需要使之支持 GET 参数传递就行了。
假设现在在网站上搜索 "abcd" ,实际的页面地址是 http://example.com/?q=abcd
第二步:编写 OpenSearch 描述文件。
只需在网站上添加一个 xml 文件即可,内容如下:
2 <OpenSearchDescription xmlns="http://a9.com/-/spec/opensearch/1.1/">
3 <ShortName>Web Search</ShortName>
4 <Description>Use Example.com to search the Web.</Description>
5 <Tags>example web</Tags>
6 <Contact>admin@example.com</Contact>
7 <Url type="text/html"
8 template="http://example.com/?q={searchTerms}"/>
9 </OpenSearchDescription>
为了便于描述,将这个文件命名为 opensearch.xml 放置在网站根目录下。
第三步:添加对 OpenSearch 描述文件的引用。
这一步也很简单,只需要在网站的模板的 <head> 标记中添加一句:
<link type="application/opensearchdescription+xml"
href="opensearch.xml" title="Web Search" rel="search" />
就行了。
更多:
通过修改 OpenSearch 描述文件,可以提供更多设置。
Firefox 支持使用 OpenSearch Suggestions 插件 来进行逐字提示搜索的功能。要实现这个功能,只需根据搜索参数返回按格式编写的 JSON 数据,然后在描述文件中添加相应的 Url 参数即可。
IE 支持(其实 Firefox 也支持)使用 OpenSearch Referrer 插件 为搜索添加 Referrer 参数。