Comment ajouter Google chrome omnibox-support de recherche pour votre site?

Lorsque j'entre certaines URL dans Google Chrome omnibox, je vois le message "Appuyez sur TAB pour rechercher dans $URL". Par exemple, il existe des sites russes habrahabr.ru ou yandex.ru. lorsque vous appuyez sur TAB, vous serez en mesure de rechercher dans ce site, pas dans votre moteur de recherche. Comment faire mon site pour être en mesure pour elle? Peut-être, j'ai besoin d'écrire un code spécial dans mes pages de site?

122
demandé sur John Carter 2011-10-03 04:24:36

2 réponses

Chrome gère généralement cela via les préférences de l'utilisateur. (via chrome://settings/searchEngines)

Toutefois, si vous souhaitez l'implémenter spécifiquement pour vos utilisateurs, vous devez ajouter un OSD (Open Search Description) à votre site.

Faire usage de Google Chrome OmniBox [onglet] fonctionnalité pour / sur le site personnel?

Vous ajoutez ensuite ce fichier XML à la racine de votre site, et un lien vers celui-ci dans votre balise <head>:

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

Maintenant, les visiteurs de votre page auront automatiquement votre site informations de recherche placées dans les paramètres internes de Chrome à chrome://settings/searchEngines.

OpenSearchDescription exemple de format 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>

La partie importante est l'élément <url>. {searchTerms} sera remplacé par ce que l'utilisateur recherche dans l'omnibar.

Voici un lien vers OpenSearch pour plus d'informations.

178
répondu element119 2017-05-23 12:17:57

Implémentation du support omnibox avec des suggestions de recherche

La réponse donnée par @element119 fonctionne parfaitement, mais voici un code légèrement modifié pour prendre en charge les suggestions de recherche ainsi que le Support de Mozilla.

Suivez les étapes ci-dessous pour implémenter le support omni box pour votre site.

  1. enregistrez le code suivant en tant que recherche.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. Télécharger recherche.xml à la racine de votre site.

  2. Ajouter la méta suivante tag de votre site <head> balise

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

Assurez-vous de remplacer les URL de domaine par votre domaine.

22
répondu Shan Eapen Koshy 2015-09-21 04:00:15