Когда я ввожу некоторые URL-адреса в Google omnibox, я вижу сообщение "Нажмите TAB для поиска в $URL". Например, есть некоторые русские сайты habrahabr.ru или yandex.ru. Когда вы нажимаете TAB, вы сможете искать на этом сайте, а не в своей поисковой системе. Как сделать мой сайт для этого? Может быть, мне нужно написать специальный код на страницах моего сайта?
Как добавить поддержку google chrome omnibox для вашего сайта?
Ответ 1
Chrome обычно обрабатывает это через пользовательские настройки. (через chrome://settings/searchEngines
)
Однако, если вы хотите реализовать это специально для своих пользователей, вам нужно добавить OSD (Open Search Description) на ваш сайт.
Использование функции OmniBox [TAB] Google Chrome для личного веб-сайта?
Затем вы добавляете этот XML файл в корень вашего сайта и ссылаетесь на него в теге <head>
:
<link rel="search" type="application/opensearchdescription+xml" title="Stack Overflow" href="/opensearch.xml" />
Теперь посетители вашей страницы автоматически будут размещать информацию о вашем сайте в внутренних настройках Chrome в chrome://settings/searchEngines
.
Пример формата XML OpenSearchDescription
<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}
будет заменено тем, что пользователь ищет в omnibar.
Здесь для ссылки на ссылку OpenSearch.
Ответ 2
Внедрение поддержки omnibox с предложениями по поиску
Ответ, данный @element119, отлично работает, но вот слегка измененный код для поддержки предложений поиска, а также поддержки Mozilla.
Следуйте приведенным ниже инструкциям, чтобы реализовать поддержку omni box для вашего сайта.
- Сохраните следующий код как search.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&q={searchTerms}" />
<Url type="text/html" method="GET" template="http://yoursite.com/?s={searchTerms}" />
<SearchForm>http://yoursite.com/</SearchForm>
</OpenSearchDescription>
-
Загрузите search.xml в корень вашего сайта.
-
Добавьте на свой сайт тег
<head>
следующего метатега
<link rel="search" href="#" onclick="location.href='http://www.yoursite.com/search.xml'; return false;" type="application/opensearchdescription+xml" title="You site name"/>
Обязательно замените URL-адреса домена своим доменом.