在網站上添加了 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 檔案即可,內容如下:
1 <?xml version="1.0" encoding="UTF-8"?>
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 參數。
參考資料:
OpenSearch 1.1 協議
OpenSearch 首頁