3

私はduckduckgoにいて、ブラウザに検索エンジンフィールドを追加したいと思っていました.

通常はブラウザ ユーティリティで検索する必要がありましたが、ブラウザが既にそれを検出しているのを見て驚きました。

ここに画像の説明を入力

このようにサイトの検索が自動的に表示されるようにするにはどうすればよいですか?

ご注意ください:

自動提案機能を実装するつもりはありません (現在)、ブラウザにサービスを保存しようとしているだけです (stackoverflow+firefox とまったく同じ動作)。

-編集-

彼らのサイトで見つけたコードを試してみましたが、これは opensearch のドキュメントと一致しています。

1)

    <link title="your service name" type="application/opensearchdescription + xml " rel="
search " href="/opensearch.xml ">

2) xml ファイル: /opensearch.xml

<OpenSearchDescription>
     <ShortName>DuckDuckGo</ShortName>
     <Description>Search DuckDuckGo (SSL)</Description>
     <InputEncoding>UTF-8</InputEncoding>
     <LongName>DuckDuckGo Search (SSL)</LongName>
     <Image width="16" height="16">http://duckduckgo.com/favicon.ico</Image>
     <Url type="text/html" method="get" template="https://duckduckgo.com/?q={searchTerms}"/>
</OpenSearchDescription>

しかし、私のドメイン名と URL では、firefox は (写真と同じように) サービスを検出しません。

4

3 に答える 3

5

どうやら、Firefox、IE、および Chrome は、 OpenSearch Standardを実装するサイトを検出できるようです。

基本的に、次のような XML OpenSearch 記述ドキュメントをサイトに提供します。

<?xml version="1.0" encoding="UTF-8"?>
<OpenSearchDescription xmlns="http://a9.com/-/spec/opensearch/1.1/">
  <ShortName>Web Search</ShortName>
  <Description>Use Example.com to search the Web.</Description>
  <Tags>example web</Tags>
  <Contact>admin@example.com</Contact>
  <Url type="application/rss+xml" 
       template="http://example.com/?q={searchTerms}&amp;pw={startPage?}&amp;format=rss"/>
</OpenSearchDescription>

<head>...そして、次のようにサイトにリンクします。

<link rel="search" 
  type="application/opensearchdescription+xml" 
  href="http://www.example.com/search.src" 
  title="Add Example.Com Search" />

この lifehacker.com の記事のコメント(コメントを表示するには、[すべて] を選択する必要があります) は、Facebook の実装への参照を使用して、自分のサイトに実装する方法を示しているようです。周りを見渡すと、かなりの数の主要なリファレンス サイトがこの機能を実装しているようです。

于 2012-04-24T17:11:31.027 に答える
2

私はあなたのサイト (funcook.com) を見ました。

1) リンク タグの type 属性にあるすべてのスペースを削除する必要があります。

<link title="Funcook" type="application/opensearchdescription + xml" rel="search" href="http://funcook.com/opensearch.xml" />

になります:

<link title="Funcook" type="application/opensearchdescription+xml" rel="search" href="http://funcook.com/opensearch.xml" />

2) opensearch.xml で適切な名前空間を使用する必要があります。

<?xml version="1.0" encoding="UTF-8"?>
<OpenSearchDescription>
[...]

になります:

<?xml version="1.0" encoding="UTF-8"?>
<OpenSearchDescription xmlns="http://a9.com/-/spec/opensearch/1.1/">
[...]
于 2012-05-02T16:50:10.423 に答える
0

上手、

私はちょうど考えました、なぜ彼らのコードをチェックしませんか?

2つのステップ:

1)xmlファイルを指す

    <link title="your service name" type="application/opensearchdescription + xml " rel="
search " href=" / opensearch_ssl.xml ">

2)xmlファイル:/opensearch_ssl.xml

<OpenSearchDescription>
     <ShortName>DuckDuckGo</ShortName>
     <Description>Search DuckDuckGo (SSL)</Description>
     <InputEncoding>UTF-8</InputEncoding>
     <LongName>DuckDuckGo Search (SSL)</LongName>
     <Image width="16" height="16">http://duckduckgo.com/favicon.ico</Image>
     <Url type="text/html" method="get" template="https://duckduckgo.com/?q={searchTerms}"/>
</OpenSearchDescription>

そして、それはそれであるように思われ、テストされ、承認されたものとしてマークされます

于 2012-04-25T16:14:30.747 に答える