24

Google Chromeには、タブを押してサイトを検索できる機能があります。次に、Chromeはサイト自体の検索エンジンに移動し、入力されたクエリを実行します。Chromeのドキュメントによると、これは、検索しようとしているサイトでGoogleが検索エンジンを検出した場合にのみ利用可能です。

これは確かに当てはまります。なぜなら、書き込みstackoverflow.com<Tab>test<Enter>によってChromeはここをナビゲートfacebook.com<Tab>test<Enter>しますが、タブキーがアドレス行からタブキーで移動するため、何もしません。

私が疑問に思っているのは、私のサイトに検索エンジンがあることをGoogleに示す方法と、タブ検索機能が使用されているときにChromeユーザーを私のサイトに正しくリダイレ​​クトするためにGoogleがクエリをフォーマットする必要がある方法です。メタタグですか?robots.txtにありますか?

4

2 に答える 2

25

少し掘り下げた後、私はこれを説明するこのページを見つけました。また、Stackoverflowのソースコードを読んで、次のコード行を見つけることもできます。

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

/opensearch.xmlこれが行うことは、これを含むファイルで検索エンジンを使用する方法の説明をGoogleに示すことです。

<?xml version="1.0" encoding="UTF-8" ?>
<OpenSearchDescription xmlns="http://a9.com/-/spec/opensearch/1.1/" xmlns:moz="http://www.mozilla.org/2006/browser/search/">
  <ShortName>Stack Overflow</ShortName>
  <Description>Search Stack Overflow: Q&amp;A for professional and enthusiast programmers</Description>
  <InputEncoding>UTF-8</InputEncoding>
  <Image width="16" height="16" type="image/x-icon">http://sstatic.net/stackoverflow/img/favicon.ico</Image>
  <Url type="text/html" method="get" template="http://stackoverflow.com/search?q={searchTerms}"></Url>
</OpenSearchDescription>
于 2012-12-29T14:25:52.357 に答える
3

オンラインのクリンゴン語辞書に検索機能を実装したところ、Chromeを検索エンジンとして自動検出するためにOpenSearchの説明は必要ないことがわかりました。

注:これはより簡単な方法ですが、検索テンプレートの指定、カスタムファビコン(Chromeはサイトのファビコンを自動的に使用します)などの高度な機能を使用できません。また、Chrome以外のブラウザーでは機能しない場合があります。

私はここの説明から始めました検索エンジン自動検出:Google Chrome自動検出、それは言う:

興味深いことに、自動検出は、検索エンジンがホームページにある場合にのみ機能します。searchタイプまたは次textの名前のタイプの入力フィールドが必要sです。

<form>
  <input type="search" name="s" />
</form>

また

<form>
  <input type="text" name="s" />
</form>

Chromeに、OpenSearchの説明を使用せずに、自分のWebサイトklingonska.orgで検索エンジンを自動検出させました。

sただし、フィールドを呼び出す必要も、使用する必要もないことがわかったため、上記の説明から逸脱しましたtype="search"。私の最終的な<form>外観は次のようになります(縮小形)。

<form method=get action="dict/">
  <input name=q placeholder="Search dictionary…">
  <button type=submit>Search</button>
</form>

重要な要素は、フォームがルートページhttp://<domain>/ページ(のようなサブページではないhttp://<domain>/<dir>/<something>.html)にあることであるように思われました。そして、IIRC、検索フォームには単一のフィールドしか含まれていません。

于 2019-01-13T21:16:57.753 に答える