Lọc và sắp xếp kết quả tìm kiếm

Tổng quan

Để giúp người dùng truy cập vào đúng trang trên trang web của bạn, Công cụ tìm kiếm có thể lập trình cung cấp các toán tử tìm kiếm có cấu trúc để bạn có thể xem chi tiết về các nhóm nhỏ kết quả tìm kiếm dựa trên dữ liệu có cấu trúc có trên các trang của bạn hoặc siêu dữ liệu liên kết với hình ảnh trên trang web của bạn.

Đối với tính năng tìm kiếm hình ảnh, Google sử dụng cả dữ liệu có cấu trúc trên các trang của bạn lẫn siêu dữ liệu hình ảnh mà Google phát hiện được khi thu thập dữ liệu trên trang web của bạn. Chúng tôi khuyên tất cả quản trị viên web nên làm quen với nguyên tắc xuất bản hình ảnh của chúng tôi.

  1. Tìm kiếm trên web
  2. Tìm kiếm hình ảnh
  3. Tìm kiếm có cấu trúc trong Phần tử tìm kiếm có thể lập trình

Tìm kiếm trên web

Không giống như văn bản (là một chuỗi các từ ở dạng tự do), dữ liệu có cấu trúc được sắp xếp hợp lý thành một tập hợp các đối tượng với một tập hợp các thuộc tính. Công cụ tìm kiếm có thể lập trình trích xuất nhiều loại dữ liệu có cấu trúc để sử dụng theo cách toán tử tìm kiếm, bao gồm ngày tháng, tác giả, xếp hạng và giá cả; đây là dữ liệu giống nhau có sẵn để sử dụng trong đoạn mã tùy chỉnh. Trong Ngoài ra, Công cụ tìm kiếm có thể lập trình còn hỗ trợ dữ liệu có cấu trúc ở bất kỳ định dạng nào sau đây:

  • PageMap: PageMap thể hiện rõ dữ liệu có cấu trúc dưới dạng DataObjects có Thuộc tính và giá trị, được mã hoá dưới dạng khối XML được nhúng trong một trang web. Công cụ tìm kiếm có thể lập trình tạo ra tất cả dữ liệu PageMap được định dạng chính xác có sẵn cho các toán tử tìm kiếm có cấu trúc; dữ liệu này cũng có thể được dùng trong đoạn mã tuỳ chỉnh.
  • meta thẻ: Google trích xuất nội dung được chọn từ meta của biểu mẫu <meta name="NAME" content="VALUE">. Thẻ meta của biểu mẫu <meta name="pubdate" content="20100101"> có thể là được sử dụng với toán tử tìm kiếm có trong biểu mẫu: &sort=metatags-pubdate.
  • Ngày diễn ra trang: Google phỏng đoán ngày của một trang dựa trên URL, tiêu đề, ngày xuất bản và các tính năng khác. Ngày này có thể được dùng với toán tử sắp xếp bằng cách sử dụng loại dữ liệu có cấu trúc đặc biệt date, như trong &sort=date.
  • Dữ liệu về đoạn mã đa dạng thức: Google cũng trích xuất một nhóm nhỏ dữ liệu từ các tiêu chuẩn công khai như: để sử dụng trong các toán tử dữ liệu có cấu trúc của Công cụ tìm kiếm có thể lập trình. Ví dụ: để sắp xếp các trang được đánh dấu bằng Microformat Tiêu chuẩn hrecipe dựa trên xếp hạng của họ, hãy sử dụng &sort=recipe-ratingstars

Thông tin khác về việc cung cấp dữ liệu có cấu trúc.

Nếu trang của bạn chứa dữ liệu có cấu trúc thì bạn có thể áp dụng các toán tử tìm kiếm có cấu trúc để giới hạn nội dung tìm kiếm của bạn trong các trường có giá trị dữ liệu, sắp xếp hoàn toàn theo giá trị số, độ lệch so với các giá trị nhất định thay vì sắp xếp hoặc thậm chí giới hạn trong một phạm vi giá trị số nhất định.

Qua dữ liệu có cấu trúc, Công cụ tìm kiếm có thể lập trình hỗ trợ những toán tử tìm kiếm sau đây:

Trở lại đầu trang

Lọc theo thuộc tính

Tính năng lọc theo thuộc tính cho phép bạn chọn ba loại kết quả:

  • Kết quả có một DataObject đính kèm cụ thể, chẳng hạn như một bài đánh giá
  • Kết quả có DataObject với trường nhất định, chẳng hạn như một bài đánh giá có khoảng giá.
  • Kết quả có giá trị cụ thể của một trường, chẳng hạn như bài đánh giá 5 sao.

Để lọc theo thuộc tính, hãy thêm more:pagemap:TYPE-NAME:VALUE vào truy vấn tìm kiếm. Chế độ này hạn chế kết quả tìm kiếm ở những trang có dữ liệu có cấu trúc khớp chính xác với loại, tên và giá trị đó. (Công cụ tìm kiếm có thể lập trình sẽ chuyển đổi lên đến 200 thuộc tính trên mỗi trang, bắt đầu với dữ liệu sơ đồ trang, tiếp đến là JSON-LD, vi định dạng, thẻ meta, RDFa và vi dữ liệu). Thuộc tính không được có nhiều hơn dài hơn 128 ký tự. Bạn có thể khái quát hoá toán tử này bằng cách bỏ qua VALUE để khớp tất cả các bản sao của trường được đặt tên hoặc bỏ qua -NAME:VALUE để khớp với mọi đối tượng thuộc một kiểu cho trước.

Để xem cách xây dựng toán tử hoàn chỉnh từ dữ liệu có cấu trúc, hãy nhớ lại ví dụ chúng ta đã sử dụng trước đó:

[halloween more:pagemap:document-author:lisamorton]

Phân tích more:pagemap:document-author:lisamorton hạn chế một cách chi tiết hơn, toán tử more: là yếu tố mà Công cụ tìm kiếm có thể lập trình sử dụng đối với các nhãn tinh chỉnh, phần pagemap: của nhãn tinh lọc cho chúng tôi biết tinh chỉnh kết quả theo các thuộc tính cụ thể trong PageMaps được lập chỉ mục, và các phần tử còn lại của toán tử—document-authorlisamorton – chỉ định nội dung mà kiểm tra hạn chế xuống. Hãy nhớ lại PageMap từ ví dụ:

<PageMap>
  <DataObject type="document">
    <Attribute name="title">The Five Scariest Traditional Halloween Stories</Attribute>
    <Attribute name="author">lisamorton</Attribute>
  </DataObject>
</PageMap>

Bộ hạn định document-author: của toán tử yêu cầu chúng ta xem cho DataObject thuộc loại document có Thuộc tính có tên author. Khoá dữ liệu có cấu trúc này đứng trước giá trị lisamorton, Giá trị này phải khớp chính xác với giá trị của Thuộc tính sẽ được trả về trong tìm kiếm có chứa hạn chế này.

more:p:document-author:lisamorton

Khi lọc theo Thuộc tính, bạn có thể tạo các bộ lọc phức tạp hơn (và bộ lọc ngắn hơn) bằng một truy vấn nhỏ gọn. Ví dụ: bạn có thể thêm đoạn mã sau Sơ đồ trang cho một URL:

    <pagemap>
      <DataObject type="document">
        <Attribute name="keywords">horror</Attribute>
        <Attribute name="keywords">fiction</Attribute>
        <Attribute name="keywords">Irish</Attribute>
      </DataObject>
    </pagemap>
  </page>

Để truy xuất kết quả cho truy vấn "Tiếng Ireland VÀ hư cấu", hãy sử dụng cách sau:

more:p:document-keywords:irish*fiction

Điều này tương đương với more:pagemap:document-keywords:Irish more:pagemap:document-keywords:fiction.

Để truy xuất kết quả cho "Irish AND (viễn tưởng HOẶC kinh dị)", hãy sử dụng các cách sau:

more:p:document-keywords:irish*fiction,irish*horror

Trở lại đầu trang

Lọc theo chi nhánh

Lọc theo nhánh là biến thể của tính năng lọc theo thuộc tính có sẵn cho JSON-LD, Vi định dạng và RDFa. Đây là loại bộ lọc duy nhất theo thuộc tính có sẵn cho dữ liệu có cấu trúc JSON-LD.

Trường hợp dữ liệu có cấu trúc không chứa cây hoặc chỉ chứa cây không có cây phần tử con, thì các hạn chế sẽ giống như lọc theo thuộc tính. Tuy nhiên, cây có con có hạn chế chứa: type-name cho mỗi nút từ gốc đến nút lá, do đó, một cây mà:

  • Gốc thuộc loại Event
  • Một trẻ có tên là xếp hạng
  • Thành phần con đó có một loại AggregateRating
  • Phần tử con có một thuộc tính có tên là ratingCount và giá trị là 22
Sẽ tạo quy tắc hạn chế: more:pagemap:event-rating-aggregaterating-ratingcount:22 cho chi nhánh kết thúc tại số lượng xếp hạng.

Sử dụng Lọc theo thuộc tính hoặc nhánh với các tính năng khác

Bạn có thể sử dụng cú pháp mở này để xem chi tiết nội dung được chỉ định trong PageMaps trên các tài liệu trên trang web của bạn; bạn cũng có thể sử dụng cú pháp tương tự này với hầu hết các loại dữ liệu có cấu trúc khác được Google hỗ trợ, chỉ ngoại trừ ngày dự kiến trên trang. Bạn có thể bạn cũng có thể sử dụng các toán tử more:pagemap: này với nhãn tinh lọc hoặc phần tử truy vấn ẩn để lọc kết quả theo thuộc tính quan trọng đối với ứng dụng của bạn, vì vậy, người dùng cuối sẽ không phải nhập trực tiếp những bộ hạn định này.

Bạn cũng có thể bỏ qua các phần của toán tử tìm kiếm. Trong ví dụ trên, lưu ý rằng PageMap chỉ định một DataObject thuộc loại document và thuộc tính loại author. Tuy nhiên, không phải trang nào trên trang web của bạn cũng tài liệu và không phải tài liệu nào cũng có thể có tác giả được ghi nhận tác giả. Nếu bạn sử dụng toán tử có dạng more:pagemap:document-author, kết quả được trả về sẽ bao gồm tất cả các trang có Thuộc tính author trong DataObject document, bất kể giá trị của thuộc tính Thuộc tính là. Tương tự, more:pagemap:document sẽ trả về tất cả kết quả có PageMaps có DataObjects thuộc loại document, bất kể trường nào trên DataObject đó.

Mã hoá giá trị văn bản cho các hạn chế

Giá trị thuộc tính chứa dấu cách, dấu câu hoặc ký tự đặc biệt hầu như luôn được chia thành các mã thông báo riêng biệt; ví dụ: thuộc tính giá trị của "Programmable Search Engine@google" sẽ được chia thành 3 mã thông báo riêng biệt "tùy chỉnh", "tìm kiếm" và "google". Chế độ này cho phép tìm kiếm trên một từ được nhúng vào một chuỗi từ và dấu câu lớn hơn, chẳng hạn như mô tả. (Công cụ tìm kiếm có thể lập trình sẽ trích xuất tối đa 10 mã thông báo trên mỗi chuỗi, do đó nếu giá trị thuộc tính chứa nhiều hơn 10 từ nên không phải từ nào cũng dùng được để hạn chế results.) Ví dụ: PageMap sau đây bao gồm một mô tả sản xuất của Công cụ tìm kiếm có thể lập trình:

<PageMap>
  <DataObject type="product">
    <Attribute name="description">Programmable Search Engine provides customized search engines</Attribute>
  </DataObject>
</PageMap>

Giới hạn sau sẽ tìm tất cả các trang có product-description thuộc tính về "tìm kiếm":

[more:pagemap:product-description:search]

Các quy tắc khác để mã hoá giá trị văn bản:

  • Các giá trị văn bản được chuyển đổi thành chữ thường cho các giới hạn
  • Đối với các chuỗi dài tối đa 6 mã thông báo, một giới hạn bổ sung sẽ được tạo cho toàn bộ chuỗi, có các khoảng trống được thay thế bằng _, chẳng hạn như please_attend.
  • Hệ thống không tạo ra các quy tắc hạn chế riêng đối với các từ dừng, chẳng hạn như the, a, nhưngdo đó kém hữu ích hơn cho việc tìm kiếm. Vì vậy, giá trị văn bản: "điểm chính" sẽ tạo các hạn chế cho main, point, và the_main_point nhưng sẽ không tạo ra hạn chế cho the.
  • Chỉ 10 từ đầu tiên trong giá trị văn bản được dùng để giới hạn biểu mẫu.
  • Các ký tự dấu câu không được coi là dấu phân cách sẽ được chuyển đổi thành dấu gạch dưới, _.

Xem chi tiết các giá trị được mã hoá bằng nhiều hạn chế

Để xem chi tiết hơn, bạn có thể thêm các hạn chế khác; ví dụ: để chỉ tải những trang mô tả các sản phẩm của công cụ tìm kiếm, hãy thêm các hạn chế:

[more:pagemap:product-description:search more:pagemap:product-description:engine]

Thứ tự của các quy định hạn chế more:pagemap: là không đáng kể; mã thông báo được trích xuất từ giá trị thuộc tính thành một tập hợp không theo thứ tự.

Các quy định hạn chế này được kết hợp theo mặc định với AND; Tuy nhiên, bạn cũng có thể kết hợp chúng với Toán tử OR để nhận được kết quả phù hợp với một trong hai hạn chế. Ví dụ: sau đây là một tìm kiếm sẽ khớp với nội dung về tìm kiếm hoặc trò chơi:

[more:pagemap:product-description:search OR more:pagemap:product-description:game]

Có một trường hợp ngoại lệ đối với việc mã hoá kỹ thuật số đối với các giá trị thuộc tính là URL. Từ mã thông báo từ URL có tính hữu ích biên, nên chúng tôi không tạo bất kỳ mã nào từ các giá trị thuộc tính là URL hợp lệ.

Trong một số trường hợp nhất định (ví dụ: khi các mã thông báo ngắn thường được tìm thấy cùng nhau, Công cụ tìm kiếm có thể lập trình có thể kết hợp các mã này để tạo ra các siêu mã thông báo. Ví dụ: nếu mã thông báo "Tổng thống" và "Obama" thường xuyên xuất hiện cạnh nhau, Công cụ tìm kiếm có thể lập trình có thể tạo siêu mã thông báo "pResident_obama". Do đó, [more:pagemap:leaders-name:president_obama] sẽ trả về kết quả tương tự như [more:pagemap:leaders-name:president AND more:pagemap:leaders-name:obama].

Một ngoại lệ chính khác đối với việc mã hoá dựa trên dấu câu là dấu gạch chéo lên '/' khi phân tách các số. Giá trị thuộc tính có dạng 'NUMBER/NUMBER' hoặc 'NUMBER/NUMBER/NUMBER' được xử lý dưới dạng mã thông báo liền kề; ví dụ: "3,5/5" và '09/23/2006' đều được coi là mã thông báo đơn lẻ. Ví dụ: để tìm kiếm trên thuộc tính có giá trị '2006/09/23', sử dụng giới hạn:

[more:pagemap:birth-date:2006/09/23]

Kết hợp dựa trên dấu gạch chéo chỉ hoạt động khi dấu gạch chéo lên nằm trong khoảng số không có dấu cách; khoảng trắng giữa dấu gạch chéo và số sẽ dẫn đến việc tạo các mã thông báo riêng biệt. Ngoài ra, các số điện thoại đã tham gia bởi dấu gạch chéo phải khớp chính xác; thì toán tử Lọc theo thuộc tính không diễn giải các giá trị này dưới dạng phân số hoặc ngày tháng. các toán tử tìm kiếm có cấu trúc khác, chẳng hạn như Sắp xếp theo thuộc tínhGiới hạn trong phạm vi, hãy diễn giải các số này dưới dạng phân số và ngày tháng; xem tài liệu về Cung cấp dữ liệu có cấu trúc cho chi tiết hơn.

Trở lại đầu trang

Hạn chế đối với JSON-LD

JSON-LD là một định dạng chuẩn và mạnh mẽ cho dữ liệu có cấu trúc. Dữ liệu này được định dạng là JSON và được đặt trong một Thẻ <script> với type="application/ld+json".

Dưới đây là một chút HTML tối thiểu với một số JSON-LD đơn giản:

<script type="application/ld+json">
      {
        "@id": "http://event.example.com/events/presenting-foo",
        "@type": "http://schema.org/AggregateRating",
        "http://schema.org/ratingCount": "22",
        "http://schema.org/ratingValue": "4.4",
        "http://schema.org/itemReviewed": {
          "@type": "http://schema.org/Event",
          "http://schema.org/description": "Please attend.",
          "http://schema.org/name": "Presenting Foo",
          "http://schema.org/startdate": "2022-05-24",
          "http://schema.org/location": "Back room"
        }
      }
</script>

Thao tác này sẽ tạo ra các hạn chế sau đây:

  • more:pagemap:aggregaterating-ratingcount:22
  • more:pagemap:aggregaterating-ratingvalue:4.4
  • more:pagemap:aggregaterating-itemreviewed-event-description:please_attend
  • more:pagemap:aggregaterating-itemreviewed-event-description:please
  • more:pagemap:aggregaterating-itemreviewed-event-description:attend
  • more:pagemap:aggregaterating-itemreviewed-event-name:presenting_foo
  • more:pagemap:aggregaterating-itemreviewed-event-name:presenting
  • more:pagemap:aggregaterating-itemreviewed-event-name:foo
  • more:pagemap:aggregaterating-itemreviewed-event-startdate:2022-05-24
  • more:pagemap:aggregaterating-itemreviewed-event-location:back_room
  • more:pagemap:aggregaterating-itemreviewed-event-location:back
  • more:pagemap:aggregaterating-itemreviewed-event-location:room

Đối với JSON-LD, chúng tôi chỉ tạo các hạn chế cho toàn bộ đường dẫn từ thư mục gốc, xem phần Lọc theo nhánh. Tuy nhiên, gốc của cây JSON-LD có các nút lá là phần tử con mà các quy định hạn chế dẫn đến sẽ có cùng hình thức với Quy định hạn chế về thuộc tính. Một số hạn chế trong phần ví dụ ở trên được hình thành từ các nút lá ở gốc và lấy thuộc tính Hạn chế thuộc tính biểu mẫu (loại-tên-giá trị), chẳng hạn như: more:pagemap:aggregaterating-ratingcount:22

Lưu ý: Các định dạng dữ liệu có cấu trúc khác cho phép các chuỗi dài tối đa 128 byte, nhưng đối với JSON-LD, tất cả các chuỗi đều được cắt ngắn còn khoảng 50 ký tự – nhằm cố gắng không kết thúc chuỗi ở giữa từ. Tuỳ thuộc vào độ dài từ, việc này có thể giới hạn số lượng mã thông báo được tạo từ chuỗi nghiêm ngặt hơn giới hạn là 10 mã.

Trở lại đầu trang

Sắp xếp theo thuộc tính

Đôi khi, việc giới hạn một lượt tìm kiếm ở một loại kết quả cụ thể là vẫn chưa đủ; ví dụ: trong một tìm kiếm trên các bài đánh giá nhà hàng, bạn có thể muốn các nhà hàng được xếp hạng xuất hiện ở đầu danh sách. Bạn có thể đạt được điều này với tính năng sắp xếp theo thuộc tính của Công cụ tìm kiếm có thể lập trình, tính năng này thay đổi thứ tự kết quả dựa trên giá trị của thuộc tính dữ liệu có cấu trúc. Tính năng sắp xếp được kích hoạt bằng cách thêm &sort=TYPE-NAME:DIRECTION tham số URL đến URL yêu cầu đến Công cụ tìm kiếm có thể lập trình. Giống như tìm kiếm có cấu trúc, cách sắp xếp theo thuộc tính phụ thuộc vào dữ liệu có cấu trúc trên trang của bạn; không giống như tìm kiếm có cấu trúc, tuy nhiên, sắp xếp đòi hỏi có diễn giải số, chẳng hạn như số và ngày.

Trong biểu mẫu đơn giản nhất, bạn sẽ chỉ định loại dữ liệu có cấu trúc dựa trên loại Đối tượng dữ liệu và Tên thuộc tính trong PageMap và thêm nó vào URL yêu cầu dưới dạng &sort=TYPE-NAME. Ví dụ: để sắp xếp theo ngày trên trang biểu diễn dữ liệu dưới dạng loại date và tên sdate, hãy sử dụng cú pháp sau:

https://www.google.com/cse?cx=000525776413497593842:aooj-2z_jjm&q=comic+con&sort=date-sdate

Theo mặc định, trình phân tích cú pháp này sẽ sắp xếp theo thứ tự giảm dần, tức là các kết quả tìm kiếm được sắp xếp hoàn toàn theo ngày, trong đó dữ liệu gần đây nhất ngày tháng (chuyển thành số lớn nhất) được sắp xếp trước. Nếu bạn muốn thay đổi thứ tự sắp xếp thành tăng dần, hãy thêm một thuộc tính :a vào trường này (hoặc thêm :d để thể hiện rõ ràng chỉ định giảm dần). Ví dụ: để hiển thị kết quả cũ nhất đầu tiên, bạn có thể dùng giới hạn của biểu mẫu:

https://www.google.com/cse?cx=000525776413497593842:aooj-2z_jjm&q=comic+con&sort=date-sdate:a

Kết quả được sắp xếp theo công cụ được trình bày dựa trên giá trị mà công cụ đó mang lại có trong PageMaps của họ cho DataObject và Thuộc tính đó. Các trang thiếu PageMaps, loại DataObject hoặc giá trị có thể phân tích cú pháp cho Thuộc tính sẽ không xuất hiện theo thứ tự cố định. Trong các ví dụ ở trên, trang nếu không có thuộc tính date-sdate thì trang này sẽ không xuất hiện trong kết quả. Không thể kết hợp yếu tố sắp xếp cứng với Xu hướng theo thuộc tính tính năng được mô tả trong phần tiếp theo, nhưng có thể kết hợp với Lọc theo thuộc tínhGiới hạn trong phạm vi.

Trở lại đầu trang

Bù trừ theo thuộc tính

Đôi khi bạn không muốn loại trừ các kết quả không có giá trị; ví dụ: bạn muốn tìm kiếm món ăn Liban; nhiều loại các nhà hàng khác nhau có thể phù hợp, từ Liban thuần tuý (có liên quan nhất) đến Tiếng Hy Lạp (ít liên quan nhất). Trong trường hợp này, bạn có thể sử dụng giá trị mạnh hoặc yếu thiên kiến, sẽ thúc đẩy mạnh mẽ hoặc yếu kém kết quả mang lại nhưng sẽ không loại trừ những kết quả không có giá trị này. Bạn chỉ định một mạnh hoặc độ lệch yếu bằng cách thêm giá trị thứ hai sau hướng sắp xếp: &sort=TYPE-NAME:DIRECTION:STRENGTH, :s để chỉ xu hướng mạnh hoặc :w nếu độ lệch yếu (và :h nếu độ lệch cao sắp xếp, mặc dù việc thêm :h là không bắt buộc vì đây là mặc định). Ví dụ: thêm mức thiên kiến mạnh sẽ đảm bảo kết quả các nhà hàng Địa Trung Hải được xếp hạng sẽ vượt trội hơn các nhà hàng được xếp hạng kém nhất nhà hàng Địa Trung Hải, nhưng khó có khả năng họ sẽ xếp hạng cao hơn kết quả trùng khớp hoàn toàn về nhà hàng Liban:

https://www.google.com/cse?cx=12345:example&q=lebanese+restaurant&sort=review-rating:d:s

Có thể kết hợp nhiều độ chệch bằng toán tử dấu phẩy:

https://www.google.com/cse?cx=12345:example&q=lebanese+restaurant&sort=review-rating:d:s,review-pricerange:d:w

Thứ tự của các độ thiên vị không quan trọng. Tuy nhiên, chế độ sắp xếp cố định không thể kết hợp với bất kỳ chế độ sắp xếp nào khác vì đây là chế độ thực thi thứ tự nghiêm ngặt. Toán tử sắp xếp gần đây nhất mà bạn chỉ định trong danh sách sẽ ghi đè tất cả các toán tử sắp xếp và độ lệch trước đó.

Trở lại đầu trang

Giới hạn trong phạm vi

Để bao gồm kết quả trong khoảng từ các giá trị trở lên hoặc thấp hơn một giá trị, hãy sử dụng giới hạn phạm vi. Các hạn chế về phạm vi được :r chỉ định được thêm vào tên thuộc tính, theo sau là giới hạn trên và giới hạn dưới của thuộc tính giá trị thuộc tính: &sort=TYPE-NAME:r:LOWER:UPPER. Ví dụ: chỉ bao gồm các bài đánh giá được viết từ tháng 3 đến tháng 4 2009, bạn có thể chỉ định giới hạn phạm vi:

https://www.google.com/cse?cx=12345:example&q=lebanese+restaurant&sort=review-date:r:20090301:20090430

Đối với toán tử Giới hạn phạm vi, Google hỗ trợ số ở định dạng số thực và ngày ở ISO 8601 YYYYMMDD không có dấu gạch ngang.

Bạn không cần chỉ định giới hạn trên hoặc giới hạn dưới: cho ví dụ: để chỉ chỉ định các ngày trước năm 2009, bạn có thể viết:

https://www.google.com/cse?cx=12345:example&q=lebanese+restaurant&sort=review-date:r::20091231

Để chỉ bao gồm điểm xếp hạng trên 3 sao, hãy sử dụng các thành phần sau:

https://www.google.com/cse?cx=12345:example&q=lebanese+restaurant&sort=rating-stars:r:3.0

Các dải ô có giá trị bao gồm và có thể được kết hợp với toán tử dấu phẩy với với nhau hoặc với một kiểu hoặc một hay nhiều tiêu chí thiên vị. Ghi chú việc kết hợp hạn chế phạm vi với cả tiêu chí sắp xếp và tiêu chí độ lệch sẽ sẽ chỉ dẫn đến việc sắp xếp các mục có giá trị trong dải ô. Ví dụ: để sắp xếp theo chỉ xếp hạng các mục có từ ba sao trở lên, hãy sử dụng các thao tác sau:

https://www.google.com/cse?cx=12345:example&q=lebanese+restaurant&sort=rating-stars,rating-stars:r:3.0

Bạn có thể sắp xếp trên một tiêu chí và hạn chế theo dải ô so với một tiêu chí khác. Ví dụ: để sắp xếp theo điểm xếp hạng chỉ các mục được đánh giá trong tháng Tháng 10, hãy sử dụng:

https://www.google.com/cse?cx=12345:example&q=lebanese+restaurant&sort=rating-stars,review-date:r:20101001:20101031

Tìm kiếm hình ảnh

Khi bạn bật tính năng Tìm kiếm hình ảnh cho công cụ tìm kiếm của mình, Google sẽ hiển thị kết quả hình ảnh trong một thẻ riêng. Bạn có thể bật tính năng tìm kiếm hình ảnh bằng cách sử dụng bảng điều khiển của Công cụ tìm kiếm có thể lập trình hoặc cập nhật tệp ngữ cảnh.xml.

Tìm kiếm hình ảnh dựa vào thông tin mà Google phát hiện được khi thu thập dữ liệu trang web của bạn. Để cải thiện cách hình ảnh của bạn hiển thị trong kết quả tìm kiếm (cả trong Công cụ tìm kiếm có thể lập trình và Google Web Search), bạn nên làm quen với các nguyên tắc xuất bản hình ảnh của Google.

Lọc theo thuộc tính hình ảnh

Giống như Tìm kiếm trên web, tính năng tìm kiếm Tìm kiếm hình ảnh hỗ trợ lọc theo các thuộc tính như src, alttitle.

Trở lại đầu trang

Tính năng tìm kiếm có cấu trúc trong Phần tử tìm kiếm có thể lập trình

Các tính năng của kết quả tìm kiếm có cấu trúc cũng có thể được sử dụng cùng với Phần tử tìm kiếm có thể lập trình. Giống như với toán tử được biểu thị trong truy vấn hoặc tham số URL, thì tìm kiếm có cấu trúc trong phần tử tìm kiếm có cấu trúc trước tiên yêu cầu các trang bạn đang tìm kiếm được đánh dấu bằng các thuộc tính bạn muốn để tìm kiếm theo; thì toán tử sort của Phần tử tìm kiếm có thể lập trình được kết hợp với more:pagemap: toán tử trong truy vấn sẽ sắp xếp hoặc giới hạn kết quả tìm kiếm một cách thích hợp.

Ví dụ:SignOnSanDiego.com, một cổng tin tức của California, sử dụng Phần tử tìm kiếm có thể lập trình để hiển thị những câu chuyện gần đây cùng với ảnh trong kết quả:

Để đảm bảo độc giả không chỉ xem tin tức phù hợp nhất mà còn kịp thời, SignOnSanDiego sử dụng Bias theo thuộc tính với một giá trị "strong" trọng số đối với ngày xuất bản gần đây. SignOnSanDiego triển khai các thuộc tính ngày này với PageMaps; một định dạng được sử dụng bởiSignOnSanDiego trông như sau:

<!--
  <PageMap>
    <DataObject type="date">
      <Attribute name="displaydate" value="Wednesday, August 25, 2010"/>
      <Attribute name="sdate" value="20100825"/>
    </DataObject>

    <DataObject type="thumbnail">
      <Attribute name="src" value="http://media.signonsandiego.com/img/photos/2010/08/25/635a63e9-f4a1-45aa-835a-ebee666b82e0news.ap.org_t100.jpg"/>
      <Attribute name="width" value="100"/>
    </DataObject>
  </PageMap>
  -->

Để áp dụng Sắp xếp theo thuộc tính cho trường này, bạn cần đặt giá trị sort trong mã tìm kiếm cho Phần tử tìm kiếm có thể lập trình như minh hoạ dưới đây:

...
<div class="gcse-search" sort_by="date-sdate:d:s"></div>
...

Giống như tham số URL &sort= được mô tả ở trên, lựa chọn sắp xếp trong Phần tử tìm kiếm có thể lập trình <div class="gcse-search" sort_by="date-sdate:d:s"></div> lấy một tên thuộc tính kết hợp, chẳng hạn như date-sdate và một số thuộc tính không bắt buộc tham số được phân tách bằng dấu hai chấm. Trong trường hợp này, SignOnSanDiego đã chỉ định sắp xếp theo thứ tự giảm dần d bằng độ lệch mạnh Phiên bản s của toán tử. Nếu không cung cấp bộ hạn định, mặc định là sử dụng thứ tự giảm dần cùng với sắp xếp cố định, giống như trong trường hợp toán tử URL.

Tuỳ chọn sắp xếp này cũng bật tính năng Hạn chế theo Phạm vi. Ví dụ: một trang web nhưSignOnSanDiego có thể cho phép người dùng tìm kiếm các bài viết công bố từ ngày 25/8/2010 đến ngày 09/9/2010. Để triển khai việc này, bạn có thể đặt cách sắp xếp thành date-sdate:r:20100825:20100907. Điều này một lần nữa sử dụng kết hợp có tên thuộc tính date-sdate, mà thay vào đó hạn chế ở dải ô r của các giá trị được chỉ định 20100825:20100907. Giống như tham số URL, bạn có thể bỏ qua mục trên hoặc dưới của dải ô trong tuỳ chọn sort của Phần tử tìm kiếm có thể lập trình.

Một tính năng mạnh mẽ khác của tùy chọn sắp xếp là bạn có thể kết hợp Sắp xếp theo Thuộc tính và giới hạn theo phạm vi. Bạn có thể kết hợp nhiều toán tử trong tùy chọn sắp xếp bằng dấu phẩy. Ví dụ: để kết hợp Thành kiến mạnh mẽ củaSignOnSanDiego với những hạn chế về ngày ở trên, bạn sẽ chỉ định date-sdate:d:s,date-sdate:r:20100825:20100907. Chiến dịch này có thể kết hợp các thuộc tính riêng biệt; ví dụ: bài đánh giá về một bộ phim trang web có thể hiển thị những bộ phim được xếp hạng cao nhất được phát hành trong vòng tuần với lựa chọn review-rating,release-date:r:20100907:.

Vui lòng tham khảo trang này để biết tất cả các thuộc tính được hỗ trợ.

Bạn cũng có thể sử dụng tính năng Lọc theo thuộc tính với Phần tử tìm kiếm có thể lập trình. Ví dụ: lấy ví dụ ở phần trước với các trang có linked-blog thuộc tính; để tạo một báo cáo tùy chỉnh tuỳ chọn kiểm soát tìm kiếm chỉ trả về các trang được liên kết để sử dụng mã sau để chèn toán tử more:pagemap:linked-blog:blogspot vào mỗi truy vấn:

...
<div class="gcse-search" webSearchQueryAddition="more:pagemap:linked-blog:blogspot"></div>
...

Phương pháp này tương đối không linh hoạt vì nó hạn chế tất cả các truy vấn được phát hành từ chế độ kiểm soát này. Để xem các lựa chọn khác, hãy tham khảo tài liệu trên Phần tử tìm kiếm có thể lập trình.

Trở lại đầu trang

Khám phá các tính năng khác

Các tính năng của kết quả tìm kiếm có cấu trúc là một tập hợp hữu ích gồm những lựa chọn mang đến cho bạn kiểm soát tốt hơn ứng dụng tìm kiếm của bạn, cho phép bạn sử dụng các thuộc tính tuỳ chỉnh để sắp xếp và giới hạn kết quả tìm kiếm trong những cách hiệu quả cho người dùng. Nội dung tìm kiếm có cấu trúc cũng hoạt động hiệu quả với các tính năng khác của Công cụ tìm kiếm có thể lập trình như đoạn trích kết quả tuỳ chỉnh. Để biết thêm thông tin: