總覽
為協助使用者前往網站上的正確網頁,程式化搜尋引擎提供結構化搜尋運算子,可根據您網頁中的結構化資料或與網站上的圖片相關聯的中繼資料,進一步細查搜尋結果的子集。
以圖片搜尋來說,Google 會運用結構化資料,以及檢索網站時找到的圖片中繼資料。我們建議所有網站管理員都熟悉我們的圖片發布指南。
網頁搜尋
與文字是任意形式的字詞序列 邏輯方式整理成一組具備一組屬性的物件。 程式化搜尋引擎會擷取各種結構化資料,以供結構化使用 搜尋運算子,包括日期、作者、評分和價格;這是 可用於自訂程式碼片段中的相同資料。於 此外,程式化搜尋引擎也支援下列任一格式的結構化資料:
- PageMap: PageMap 以 DataObjects 明確表示結構化資料 編碼為內嵌於 網頁。程式化搜尋引擎能取得所有格式正確的 PageMap 資料 適用於結構化搜尋運算子這個 API 也可用於 自訂程式碼片段。
meta
標記: Google 會從「meta
」中擷取所選內容 格式為<meta name="NAME" content="VALUE">
的標記。表單的meta
標記<meta name="pubdate" content="20100101">
可以是 搭配以下形式的搜尋運算子:&sort=metatags-pubdate
。- 網頁日期:
Google 會根據網址、標題和署名來預估網頁的日期
和其他功能這個日期可與排序運算子搭配使用
特殊結構化資料類型
date
,如&sort=date
中所示。 - 複合式摘要資料:
此外,Google 也會從公開標準中擷取部分資料,例如:
,以用於程式化搜尋引擎的結構化資料運算子。
例如,將使用微格式標記的網頁排序
hrecipe
標準是根據評分而定,使用&sort=recipe-ratingstars
。
如果您的網頁包含結構化資料,然後套用程式化搜尋引擎 結構化搜尋運算子,限制搜尋特定欄位。 資料值,嚴格按照數值排序,並對特定值產生偏誤 不必排序,或甚至限制為給定的數值範圍
程式化搜尋引擎支援以下適用於結構化資料的搜尋運算子:
- 依屬性篩選 (適用於所有結構化屬性) 以及 JSON-LD 以外的資料格式
- 依樹狀分支版本篩選,適用於 JSON-LD。 微格式和 RDFa
- 依屬性排序
- Bias (依屬性)
- 限制在範圍內
依屬性篩選
依屬性篩選可讓您選取三種結果:
- 附有特定附加 DataObject 的結果,例如評論
- 含有特定欄位 DataObject 的結果,例如 價格範圍的評論
- 含有特定欄位值的結果,例如 給予 5 顆星的評論
如要依屬性篩選,請加入
more:pagemap:TYPE-NAME:VALUE
運算子加入搜尋查詢。這會將搜尋結果限制在
結構化資料都與該類型、名稱和值完全相符。(程式化搜尋引擎
每個頁面最多可轉換 200 個屬性,從網頁地圖資料開始
後面加上 JSON-LD、微格式、中繼標記、RDFa 和微資料)。屬性不應含有完整內容
超過 128 個字元
省略用來比對的 VALUE
,即可將這個運算子一般化
已命名欄位的所有例項或省略 -NAME:VALUE
比對特定類型的所有物件。
如要瞭解如何使用結構化資料建立完整運算子,請按照下列步驟操作: 想起先前使用的範例嗎?
[halloween more:pagemap:document-author:lisamorton]
細分 more:pagemap:document-author:lisamorton
以及限制
more:
運算子就是程式化搜尋引擎
修正標籤,限制條件的 pagemap:
部分
要求我們依據已建立索引的 PageMaps 中的特定屬性,修正搜尋結果
運算子的其餘元素:document-author
和
lisamorton
:指定限制演練的內容
向下移動。從範例重新呼叫 PageMap:
<PageMap> <DataObject type="document"> <Attribute name="title">The Five Scariest Traditional Halloween Stories</Attribute> <Attribute name="author">lisamorton</Attribute> </DataObject> </PageMap>
運算子的 document-author:
限定詞會指示我們
類型為 document
且屬性名稱為 author
的 DataObject。
這個結構化資料鍵後面會接 lisamorton
值。
必須與要傳回的值完全一致
包含這項限制的搜尋
more:p:document-author:lisamorton
依屬性篩選時,您可以建立較複雜的篩選器 (並縮短篩選器時間) 指令)舉例來說,您可以 網址的 PageMap:
<pagemap> <DataObject type="document"> <Attribute name="keywords">horror</Attribute> <Attribute name="keywords">fiction</Attribute> <Attribute name="keywords">Irish</Attribute> </DataObject> </pagemap> </page>
如要擷取「愛爾蘭及虛構」查詢的結果,請使用下列指令:
more:p:document-keywords:irish*fiction
相當於 more:pagemap:document-keywords:Irish more:pagemap:document-keywords:fiction
。
如要擷取「愛爾蘭 AND (虛構 OR 恐怖)」的結果,請使用下列指令:
more:p:document-keywords:irish*fiction,irish*horror
依分支版本篩選
依分支版本篩選是依屬性篩選的變化版本 JSON-LD、Micro 格式和 RDFa。這是「唯一」依屬性篩選類型 適用於 JSON-LD 結構化資料
如果結構化資料不含樹木,或只包含沒有樹木 子項時,限制與依屬性篩選相同。 不過,含有子項的樹狀圖設有以下限制: type-name 是從根層級到分葉節點的每個節點,所以以下樹狀結構:
- 根屬於事件類型
- 將子項命名為 rating
- 該子項的類型為 AggregateRating
- 該子項具有名稱為 ratingCount 且值為 22 的屬性。
使用依屬性篩選或具有其他功能的分支版本
您可以使用這個開放式語法深入瞭解指定
網站上文件的 PageMaps;你也可以使用這個語法
幾乎所有其他類型的結構化資料
Google 支援的瀏覽器,除了
預估網頁日期。你可以
這些 more:pagemap:
運算子也可以與
分類標籤或
隱藏的查詢元素
依據應用程式的重要屬性篩選結果
因此使用者無需直接輸入這些限制限定詞。
您也可以省略搜尋運算子的某些部分。在上述範例中
請注意,PageMap 指定 document
類型的 DataObject
是 author
類型的屬性。但並非網站上所有的網頁
文件,而且不一定所有文件都有註明出處的作者。如果發生以下情況:
使用 more:pagemap:document-author
格式的運算子。
傳回的結果會包含含有 author
屬性的所有網頁
document
DataObject 中的值,無論
屬性為。同樣地,more:pagemap:document
會傳回
含有 PageMaps 且類型為 document
的所有結果,
無論該 DataObject 上的哪些欄位都一樣
針對限制權杖化文字值
包含空格、標點符號或特殊字元的屬性值 幾乎一律會拆分為不同的符記舉例來說 「Programmable Search Engine@google」的值就會拆分為三個不同的符記 「自訂」、「搜尋」和「google」允許搜尋單一字詞 這些標記會嵌入到更多字詞和標點符號中 生成 3D 物件(程式化搜尋引擎會為每個字串擷取最多 10 個符記,因此如果您的 屬性值超過 10 個字詞,可能無法使用所有字詞來限制 results.) 舉例來說,下列的 PageMap 包含 程式化搜尋引擎:
<PageMap> <DataObject type="product"> <Attribute name="description">Programmable Search Engine provides customized search engines</Attribute> </DataObject> </PageMap>
下列限制會找出所有含有 product-description
的網頁
「搜尋」相關屬性:
[more:pagemap:product-description:search]
代碼化文字值的其他規則:
- 設定限制時,文字值會轉換為小寫
- 如果字串不超過六個符記,系統會針對整個字串產生額外的限制。
由
_
取代,例如please_attend
。 - 系統不會針對「停止字詞」(例如「」等字詞、 a,「但」和「結果」較不實用。所以 文字值:「主要重點」會針對 main、point 和 和 the_main_point,但不會產生 the 的限制。
- 設定限制時,只會使用文字值中的前十個字詞。
-
不是視為分隔符號的標點符號會轉換為底線
_
。
使用多項限制細查權杖化值
如要進一步細查,您可以新增其他限制。例如 只取得說明搜尋引擎產品的網頁,請加入以下限制:
[more:pagemap:product-description:search more:pagemap:product-description:engine]
more:pagemap:
限制的順序並不重要;
符記就會從屬性值擷取成未排序的集合。
這些限制 預設會以 AND 合併;或者,您也可以結合使用 OR 運算子 即可取得符合任一限制的結果例如,以下搜尋 會比對有關搜尋或遊戲的內容:
[more:pagemap:product-description:search OR more:pagemap:product-description:game]
權杖化的例外是網址屬性值。開始時間 網址權杖的實用性,我們不會透過 屬性值,也就是有效的網址。
在某些情況下 (例如經常同時找到短符記時)
程式化搜尋引擎可能會結合這些元素,以產生超級符記。舉例來說
「總統」和「歐巴馬」程式化搜尋引擎
建立超符記「p 裡伯巴馬」因此,[more:pagemap:leaders-name:president_obama]
會傳回與 [more:pagemap:leaders-name:president AND more:pagemap:leaders-name:obama]
相同的結果。
代碼化作業的另一個主體例外狀況是 斜線「/」。屬性值 「NUMBER/NUMBER」表單或「NUMBER/NUMBER/NUMBER」被視為 做為單一連續符記例如 「3.5/5.0」和「09/23/2006」 會被視為單一符記舉例來說 請搜尋值為「2006/09/23」的屬性,請使用限制:
[more:pagemap:birth-date:2006/09/23]
只有在正斜線介於 不含空格的數字;與數字之間的空格 即可建立獨立的符記再者,透過數字彙整 所謂斜線,必須完全相符;「依屬性篩選」運算子 不會將這些值視為分數或日期程式化搜尋引擎 其他結構化搜尋運算子 「排序依據」以及 限制在範圍內,執行解讀 以分數和日期的形式呈現請參閱 提供以下項目的結構化資料: 瞭解詳情
JSON-LD 的限制
JSON-LD 是功能強大的標準結構化資料格式,
資料格式為 JSON,並放在
含有 type="application/ld+json"
的 <script>
標記。
以下是簡短的 HTML 程式碼,有一些簡單的 JSON-LD:
<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>
系統會產生下列限制:
- 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
如果是 JSON-LD,我們只會針對根目錄 請參閱依分支版本篩選。 然而,JSON-LD 樹狀結構的根部有分葉節點做為子項 結果限制的表單與屬性限制相同。有些限制 上述範例是從根層級的分葉節點所建立,並採用 [Attribute Restrict's (類型名稱) 表單,例如:more:pagemap:aggregaterating-ratingcount:22
注意:其他結構化資料格式允許的字串長度上限為 128 個位元組, JSON-LD 的所有字串都會截短為 50 個字元,因此簡化了原則 字串中。視字詞長度而定,系統可能會限制產生的符記數量 超過 10 個符記的數量限制。
依屬性排序
有時候,將搜尋範圍限制在特定類型的搜尋結果是不夠的;
舉例來說,假設您在搜尋餐廳評論時
。您可以達成
與程式化搜尋引擎的按照屬性排序功能整合
根據結構化資料屬性的值排序結果。
已啟用排序功能,方法是加入
&sort=TYPE-NAME:DIRECTION
您程式化搜尋引擎的要求網址網址參數。
和結構化搜尋一樣,依屬性排序取決於
您的網頁;但與結構化搜尋不同
] 欄位包含一個數值解釋,例如數字和日期。
最簡單的方式就是指定結構化資料類型
資料物件類型
PageMap 的屬性名稱,並加到要求網址 (為
&sort=TYPE-NAME
。比方說
以 date
類型表示資料的網頁上的日期
及名為 sdate
,請使用以下語法:
https://www.google.com/cse?cx=000525776413497593842:aooj-2z_jjm&q=comic+con&sort=date-sdate
在預設情況下,系統會執行硬式排序,也就是以遞減順序排列,也就是說,
系統只會依照日期排序搜尋結果,
日期 (轉譯數字最大)。
如要將排序順序變更為遞增,請在前面加上
:a
附加至欄位 (或明確附加 :d
以
指定遞減)。舉例來說,如要優先顯示最舊的結果
請使用以下格式限制:
https://www.google.com/cse?cx=000525776413497593842:aooj-2z_jjm&q=comic+con&sort=date-sdate:a
引擎的排序結果會根據
就列出該 DataObject 和 Attribute 的 PageMaps。頁
缺少 PageMaps、DataObject 類型或是該物件的可剖析值
屬性不會以固定順序顯示。在上述範例中,網頁
缺少 date-sdate
屬性時,就不會顯示
結果。硬式編碼排序無法與依屬性的偏誤合併
功能,但也能與
依屬性篩選以及
「限制在範圍中」:
偏誤 (依屬性)
有時候,您會不想排除沒有值的結果;
例如想搜尋黎巴嫩美食各種
從純黎巴嫩 (最相關) 到
希臘文 (最不相關)。這時,您可以選用「高」或「弱」
自訂偏誤,從而強力或弱化推廣具有
而不會排除缺少該價值的結果。您指定了
排序方向後加上第二個值即可降低偏誤:
&sort=TYPE-NAME:DIRECTION:STRENGTH
,
產生強烈偏誤的:s
:w
代表弱點 (硬性偏誤為 :h
)
排序,但由於預設加入 :h
是選擇性動作)。
例如,加入強烈偏誤,可確保
評價最差的地中海餐廳
地中海餐廳,但不太可能會超越排名
與黎巴嫩餐廳完全相符的結果:
https://www.google.com/cse?cx=12345:example&q=lebanese+restaurant&sort=review-rating:d:s
您可以使用半形逗號運算子合併多個偏誤:
https://www.google.com/cse?cx=12345:example&q=lebanese+restaurant&sort=review-rating:d:s,review-pricerange:d:w
偏誤的排序並不重要。 然而,硬排序在強制執行時,不能與任何其他排序搭配使用 以嚴格排序您在清單中指定的最後一個排序運算子將 會覆寫所有先前的排序和偏誤運算子。
限制在範圍內
如要納入介於一定值或高於/低於某個值的結果,
使用範圍限制範圍限制是由 :r
指定
後面加上屬性名稱的上下限和下限
屬性值:&sort=TYPE-NAME:r:LOWER:UPPER
。
例如,只納入 3 月到 4 月期間撰寫的評論
2009 年,您可以指定以下範圍限制:
https://www.google.com/cse?cx=12345:example&q=lebanese+restaurant&sort=review-date:r:20090301:20090430
對於 Restrict to Range 運算子,Google 支援數字
格式為浮點格式,
ISO 8601
YYYYMMDD
(不含破折號)。
您不需要指定上限或下限: 例如,如要僅指定 2009 年之前的日期,您可以寫成:
https://www.google.com/cse?cx=12345:example&q=lebanese+restaurant&sort=review-date:r::20091231
如果只想納入超過 3 顆星的評分,請使用以下方式:
https://www.google.com/cse?cx=12345:example&q=lebanese+restaurant&sort=rating-stars:r:3.0
範圍內含,且可以與逗號運算子搭配使用 或透過單一排序或一或多個自訂調整標準注意事項 將範圍限制結合「排序」與「偏誤」條件的結果 會導致只會排序含有該範圍值的項目。例如: 只想依評分為三顆星的項目排序,請使用以下條件:
https://www.google.com/cse?cx=12345:example&q=lebanese+restaurant&sort=rating-stars,rating-stars:r:3.0
您可以根據一個條件排序,並以範圍做為限制範圍。 例如,若要僅依據評分排序,該項目僅包含在該月份獲得評論的項目 請在 10 月使用以下指令:
https://www.google.com/cse?cx=12345:example&q=lebanese+restaurant&sort=rating-stars,review-date:r:20101001:20101031
圖片搜尋
為搜尋引擎啟用圖片搜尋功能後,Google 會在另一個分頁中顯示圖片搜尋結果。如要啟用圖片搜尋功能,請使用「程式化搜尋引擎」控制台,或是更新「context.xml」檔案。
「圖片搜尋」是根據 Google 在檢索你的網站時找到的資訊來判斷。如要改善圖片在搜尋結果中的顯示方式 (包括程式化搜尋引擎和 Google 網頁搜尋),建議瞭解 Google 的圖片發布指南。
依圖片屬性篩選
和 Google 網頁搜尋一樣,「圖片搜尋」也支援篩選 src
、alt
和 title
等屬性。
程式化搜尋元素中的結構化搜尋
結構化搜尋功能也可以與 Google
程式化搜尋元素。就像查詢中表示的運算子一樣
或網址參數,在元素中加入結構化搜尋時,
然後用所需的屬性標記
搜尋方式那麼 Programmable Search Element 的 sort
運算子
結合 more:pagemap:
運算子
視需要排序或限制搜尋結果
舉例來說,加州新聞入口網站 SignOnSanDiego.com 會使用 程式化搜尋元素,在搜尋結果中顯示包含相片的最新報導:
為了確保讀者不只看到最相關 即時的新聞, SignOnSanDiego 使用「偏誤依據屬性」搭配「強」朝著體重目標邁進 最近的出版日期。SignOnSanDiego 實作這些日期屬性 使用 PageMaps;SignOnSanDiego 使用的指令看起來會像這樣:
<!-- <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> -->
如要將「排序依據屬性」套用至這個欄位,您必須設定
sort
選項
程式化搜尋元素,如下所示:
... <div class="gcse-search" sort_by="date-sdate:d:s"></div> ...
如同上述網址 &sort=
參數,程式化搜尋元素中的排序選項
<div class="gcse-search" sort_by="date-sdate:d:s"></div>
會使用合併的屬性名稱 (例如 date-sdate
) 和數個選用屬性
並以冒號分隔參數在這個範例中,您已指定 SignOnSanDiego
使用強烈偏誤以遞減方式排序 d
運算子的 s
變種版本。如未提供
限定詞,預設會使用以遞減順序排列,
就像網址運算子一樣
排序選項也會啟用「依範圍限制」功能。例如:
即使 SignOnSanDiego 這類網站,使用者也可以搜尋文章
發布時間:2010 年 8 月 25 日至 9 月 9 日如要實作這項功能
則可將排序選項設為
date-sdate:r:20100825:20100907
。這會再次使用
屬性名稱 date-sdate
,但會限制在
指定值 20100825:20100907
的範圍 r
。
與網址參數一樣,您可以忽略
範圍。sort
您還可以結合排序依據
屬性和範圍。您可以在
來選取排序選項例如,若要結合
SignOnSanDiego 在上述日期限制方面具有強烈偏見
請指定 date-sdate:d:s,date-sdate:r:20100825:20100907
。這個
特徵可以結合不同屬性例如電影評論
網站會顯示上映中,最受好評的電影
選項 review-rating,release-date:r:20100907:
。
如要查看所有支援的屬性,請參閱這個頁面。
您也可以將「依屬性篩選」與「程式化搜尋元素」搭配使用。
例如,我們的先前的範例使用的是
具有 linked-blog
屬性的網頁;建立自訂網路
搜尋控制項,只傳回連結至使用下列程式碼的網頁
將 more:pagemap:linked-blog:blogspot
運算子插入
每個查詢:
... <div class="gcse-search" webSearchQueryAddition="more:pagemap:linked-blog:blogspot"></div> ...
這個方法相對缺乏彈性,因為這樣會對 查詢從這個控制項發出的查詢如要查看其他選項,請參閱說明文件 的 程式化搜尋元素。
瞭解其他功能
結構化搜尋功能是一組強大功能 大量控管搜尋應用程式 使用自訂屬性來排序及限制搜尋結果 為使用者提供強大的功能結構化搜尋也適用於 其他程式化搜尋引擎功能,例如自訂搜尋結果摘要。 詳情請參閱: