如何添加谷歌铬全方位搜索支持您的网站?

当我在 GoogleChromeomnibox 中输入一些 URL 时,我看到一条消息“按 TAB 键搜索 $URL”。例如,有一些俄罗斯站点 habrahabr.ru 或 yandex.ru。当你按 TAB 时,你可以在那个网站上搜索,而不是在你的搜索引擎里。 如何使我的网站能够呢?也许,我需要写一些特殊的代码在我的网站页面?

42273 次浏览

Chrome 通常通过用户首选项来处理这个问题(通过 chrome://settings/searchEngines)

但是,如果您想要专门为您的用户实现这一点,您需要添加一个 OSD (开放搜索描述)到您的网站。

在个人网站上使用 Google Chrome 的 OmniBox [ TAB ]功能?

然后将这个 XML 文件添加到站点的根目录,并在 <head>标记中链接到它:

<link rel="search" type="application/opensearchdescription+xml" title="Stack Overflow" href="/opensearch.xml" />

现在,访问你网页的用户会自动将你网站的搜索信息放入 Chrome 内部的 chrome://settings/searchEngines设置中。

XML 格式示例

<OpenSearchDescription xmlns="http://a9.com/-/spec/opensearch/1.1/" xmlns:moz="http://www.mozilla.org/2006/browser/search/">
<ShortName>Your website name (shorter = better)</ShortName>
<Description>
Description about your website search here
</Description>
<InputEncoding>UTF-8</InputEncoding>
<Image width="16" height="16" type="image/x-icon">your site favicon</Image>
<Url type="text/html" method="get" template="http://www.yoursite.com/search/?query={searchTerms}"/>
</OpenSearchDescription>

重要的部分是 <url>项目。{searchTerms}将被替换为用户在综合栏中搜索的内容。

这里有一个到 OpenSearch的链接,以获得更多信息。

使用搜索建议实现 omnibox 支持

@ element119给出的答案非常完美,但是这里有一个稍作调整的代码来支持搜索建议和 Mozilla 支持。

按照下面的步骤实现对站点的全方位框支持。

  1. 将下面的代码保存为 Xml
<OpenSearchDescription xmlns="http://a9.com/-/spec/opensearch/1.1/" xmlns:moz="http://www.mozilla.org/2006/browser/search/">
<script/>
<ShortName>Site Name</ShortName>
<Description>Site Description (eg: Search sitename)</Description>
<InputEncoding>UTF-8</InputEncoding>
<Image width="16" height="16" type="image/x-icon">Favicon url</Image>
<Url type="application/x-suggestions+json" method="GET" template="http://suggestqueries.google.com/complete/search?output=firefox&amp;q={searchTerms}" />
<Url type="text/html" method="GET" template="http://yoursite.com/?s={searchTerms}" />
<SearchForm>http://yoursite.com/</SearchForm>
</OpenSearchDescription>
  1. Xml上传到站点的根目录。

  2. 将下面的 meta 标记添加到站点的 <head>标记中

<link rel="search" href="http://www.yoursite.com/search.xml" type="application/opensearchdescription+xml" title="You site name"/>

确保将域 URL 替换为您的域。