Làm cách nào để thêm hỗ trợ tìm kiếm google chrome omnibox cho trang web của bạn?


150

Khi tôi nhập một số URL trong hộp địa chỉ Google Chrome, tôi thấy thông báo trong đó "Nhấn TAB để tìm kiếm trong $ URL". Ví dụ: có một số trang web tiếng Nga habrahabr.ru hoặc yandex.ru. Khi bạn nhấn TAB, bạn sẽ có thể tìm kiếm trong trang web đó, không phải trong công cụ tìm kiếm của bạn. Làm thế nào để làm cho trang web của tôi để có thể cho nó? Có lẽ, tôi cần phải viết một số mã đặc biệt trong các trang web của tôi?


Vậy, làm thế nào để nói với Chrome rằng trang web của tôi đang tìm kiếm?
Abzac

Câu trả lời:


204

Chrome thường xử lý việc này thông qua tùy chọn của người dùng. (thông qua chrome://settings/searchEngines)

Tuy nhiên, nếu bạn muốn triển khai cụ thể cho người dùng của mình, bạn cần thêm OSD (Mô tả tìm kiếm mở) vào trang web của mình.

Sử dụng tính năng OmniBox [TAB] của Google Chrome cho / trên trang web cá nhân?

Sau đó, bạn thêm tệp XML này vào thư mục gốc của trang web của bạn và liên kết với tệp đó trong <head>thẻ của bạn :

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

Giờ đây, khách truy cập vào trang của bạn sẽ tự động đặt thông tin tìm kiếm của trang web của bạn vào cài đặt nội bộ của Chrome tại chrome://settings/searchEngines.

Ví dụ về định dạng XML OpenSearchDes mô tả

<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>

Phần quan trọng là <url>mục. {searchTerms}sẽ được thay thế bằng những gì người dùng tìm kiếm trong omnibar.

Đây là một liên kết đến OpenSearch để biết thêm thông tin.


9
Lưu ý, không giống như Firefox, Chrome sẽ chỉ khám phá Mô tả Tìm kiếm Mở của bạn nếu bạn đặt nó vào thư mục gốc của trang web .
varepsilon

2
Có cách nào để "omnibox-search" hoạt động với firefox không?
JinSnow 10/03/2015

Làm cách nào để tìm url dẫn trực tiếp đến hộp truy vấn trên trang đích? (trong google dịch chẳng hạn)
JinSnow 7/11/2015

2
câu trả lời cho google dịch, hãy thêm câu này vào công cụ tìm kiếm của bạn: translate.google.com/?source=osdd#auto|auto|%s
JinSnow

Thêm công cụ tìm kiếm tại chrome://settings/searchEngineslà một tiết kiệm thời gian! Cảm ơn!
Esdras Lopez

30

Triển khai hỗ trợ thanh địa chỉ với các đề xuất tìm kiếm

Câu trả lời được đưa ra bởi @ Element119 hoạt động hoàn hảo nhưng đây là một mã được điều chỉnh một chút để hỗ trợ các đề xuất tìm kiếm cũng như Hỗ trợ Mozilla.

Thực hiện theo các bước dưới đây để triển khai hỗ trợ hộp omni cho trang web của bạn.

  1. Lưu mã sau đây dưới dạng 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&amp;q={searchTerms}" />
  <Url type="text/html" method="GET" template="http://yoursite.com/?s={searchTerms}" />
  <SearchForm>http://yoursite.com/</SearchForm>
</OpenSearchDescription>
  1. Tải search.xml vào thư mục gốc của trang web của bạn.

  2. Thêm thẻ meta sau đây để trang web của bạn <head>tag

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

Hãy chắc chắn để thay thế các url tên miền bằng tên miền của bạn.


1
Là nó <SearchForm>hay <moz:SearchForm>? Tôi dường như không tìm thấy SearchFormtrong các tài liệu OpenSearch và tất cả các tài nguyên khác mà tôi tìm thấy trực tuyến đang sử dụng <moz:SearchForm>.
Niels R.
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.