在執行 JSON-LD 或 Microdata 檢查工具後,「查看結果」指的是閱讀一份清冊,列出萃取器在原始碼中找到的每一個結構化資料項目,而不是等待單一的綠色勾號。輸出會分別列出每個 JSON-LD 腳本和每個 Microdata 項目,顯示所宣告的 @type 或 itemtype,呈現萃取器能夠讀取的屬性,並針對工具所支援的設定檔標示出重點缺口。解析失敗會與缺少屬性的警告分開呈現,資訊型註記也會與這兩者分開。仔細閱讀結果就是讓大多數實作能夠繼續前進,抑或默默上線了與頁面實際顯示內容不符的標記的那一步。將這份清冊視為關於貼上文件的證據,然後運用該證據來判斷來源模板是否需要修改、同一頁面的不同匯出版本是否說出不同的故事,以及部署後的 URL 是否已準備好可以使用您真正瞄準的搜尋功能所搭配的官方驗證工具進行檢查。

how do i check the result after i extract structured data checker when using json ld checker
如何在萃取後讀取 JSON-LD 檢查工具的結果

萃取器實際回傳的內容

這個 結構化資料檢查與萃取工具是以萃取為核心所設計,因此您在執行後讀取的結果是一份清冊,而非評分表。對於它找到的每個 JSON-LD 腳本區塊,檢查工具會將一個物件、一組物件陣列,以及一個 @graph 包裝器展開為個別項目,同時保留每個已宣告的 @type。格式錯誤的 JSON 區塊會以獨立的一行回報,因此單一損壞的腳本並不會抹除同一份文件其他位置中有效的項目。對於它逐一走訪的每個 Microdata 項目,檢查工具會回報 itemscope 根節點、itemtype,以及它能夠從內容屬性、連結、媒體來源屬性、日期值和文字內容中讀取到的 itemprop 值清單。巢狀項目會保持可見的巢狀結構,而不會被悄悄攤平為不相關的字串。因此,結果是讓您逐項、逐型別、逐屬性地閱讀,而閱讀的結構正是實用的萃取與一般語法檢查之間的主要差異。

從上到下逐步走讀結果

  1. 開啟結構化資料檢查與萃取工具,並貼上您要稽核的頁面所交付的 HTML 原始碼,或經過控制的已渲染 DOM 匯出。檢查工具不會擷取您的 URL、執行腳本或載入資源。
  2. 執行萃取,讓解析器展開 JSON-LD 容器,並走訪頂層的 Microdata 項目。
  3. 先單獨閱讀所有 JSON-LD 解析錯誤。此處出現的錯誤代表某個腳本解析失敗,並且不會列入項目清單中,而文件中其餘部分仍會繼續掃描。
  4. 檢視 JSON-LD 項目清單。針對每個項目,確認所宣告的 @type 與頁面相符,掃描可見的屬性,並記下重點的缺少屬性警告。
  5. 檢視 Microdata 項目清單。針對每個頂層 itemscope,確認 itemtype 並閱讀有限範圍的屬性檢視。
  6. 如果您的框架會在載入後注入標記,請在得出結論前比較原始回應、已渲染的 DOM,以及爬蟲可見的匯出版本。
  7. 修正來源模板、重新部署,然後使用您瞄準的搜尋功能所搭配的官方工具,對部署後的 URL 進行驗證,再正式上線。

順序之所以重要,是因為解析錯誤是無法靠添加更多屬性來修正的語法問題,而缺少屬性的警告則屬於內容面的問題。按照此順序閱讀,能讓這兩種修正方式保持分離,並避免稽核流程塌縮成單一的通過/不通過裁決。

解析錯誤、缺少屬性與觀察註記

結果刻意區分三種發現,讓您能夠對每種採取正確的處置。同一個頁面可能同時帶有這三種,而各個項目都會加上標籤,讓您無需猜測其屬於哪一類。

結果項目 所代表的意義 應採取的處置
JSON-LD 解析錯誤 某個腳本區塊未能成功解析為 JSON 修正模板中的語法,然後重新萃取
缺少必要屬性 設定檔找不到文件所記載的必填欄位 僅在該欄位代表使用者實際可見的內容時才予以新增
缺少建議屬性 設定檔找不到文件所記載的建議欄位 依據可見的內容以及您瞄準的功能來做決定
萃取到未知型別 已辨識出該型別,但沒有適用的文件設定檔 視為資訊型註記;不要自行捏造需求
資訊型觀察註記 某項邊界或限制,但並未阻擋萃取 記下該註記,然後繼續進行

理解這種區分正是檢視結果的核心目的。即使是缺少屬性警告為零的乾淨執行,內容準確度、特定功能政策、索引與渲染等層面仍然未被測試。帶有一則資訊型註記的執行,仍有可能是完整、可上線的萃取。這些項目條列的是來源中實際存在的內容,而不是該頁面是否會在搜尋引擎上獲得複合式搜尋結果。

比較同一頁面在三個來源的結果

許多框架會在最初的 HTML 回應之後注入結構化資料,這就是為何單純貼上一次往往不夠。在從清冊得出任何結論之前,請將同一個 URL 的三個版本並排貼上:伺服器所發出的原始回應、在框架有機會注入之後所擷取的、經過控制的已渲染 DOM 匯出,以及您可以透過自行關閉腳本以無頭方式擷取所得到的爬蟲可見輸出。如果這三份清冊相符,您讀取的結果所描述的就是部署後的頁面。如果它們出現歧異,歧異本身即為發現,通常代表模板在最初的 HTML 中載入了部分結構化資料,而由框架稍後補上欄位,或是其中某個變體輸出了在單頁稽核中會被忽略的重複項目。將萃取後的步驟視為一場比較,而非單純的一次讀取,才能讓檢查工具從語法工具蛻變為能夠抓出實際生產環境錯誤的除錯介面。

依據結果採取行動:模板修正與官方驗證

一旦清冊擺在眼前,下一步要動的是來源模板,而不是標記編輯器。必要屬性的警告應先進行內容檢查:可見的頁面是否真的揭露了該欄位所要描述的內容?如果是,則予以新增;若否,則此警告正確地凸顯了某項缺漏的事實,而為了消除警告而新增捏造的值,只會讓實作變得更不可信。Microdata 中的空白 URL 幾乎總是代表使用了錯誤的屬性,因此在追查更廣泛的結構化資料之前,請交叉比對 itemprop 與已渲染的 href。修正模板、重新部署後,使用您瞄準的搜尋功能所搭配的官方工具,對外公開的 URL 進行驗證。對大多數 Google 功能來說,該工具是複合式搜尋結果測試(Rich Results Test);而對 Schema.org 的一般結構來說,則是 Schema.org 驗證工具。重新檢索後,請閱讀 Search Console 的強化項目報告,以瞭解爬蟲實際收到的內容。若需要更全面的背景知識,瞭解搜尋引擎如何使用結構化資料,Google 的 結構化資料介紹涵蓋了政策層面,而相關指南 乾淨的 JSON-LD 檢查是否保證能獲得 Google 複合式搜尋結果?則逐步說明了在地端的乾淨萃取與隨後搜尋引擎決策之間的落差。

結果不會告訴您的事

結果所描述的是貼上的文件本身,而非搜尋引擎會如何處理該文件。輸出中的警告代表在地端的設定檔找不到某個屬性,並不能證明搜尋引擎將會拒絕該頁面。格式正確的 JSON 仍然可能描述不準確、隱藏或不相關的內容;看起來完整的物件仍可能違反搜尋政策、與可見頁面不一致、使用了不受支援的功能,或在部署測試中失敗。相反地,不屬於任何 Google 功能的 Schema.org 屬性,對其他消費者仍可能具有意義。因此,該工具將解析錯誤、重點屬性缺漏與資訊型觀察註記分開呈現,而不會將它們塌縮為單一是否符合資格的裁決。必要屬性的指引也不能取代內容檢視。標記應代表使用者實際能夠看見的內容,並應使用明確、準確的值。僅僅為了消除警告而新增欄位,可能會讓實作變得更不可信;少量、完整且屬實的屬性,優於一個填滿了通用或捏造值的大型物件。搜尋引擎會決定是否以及何時呈現強化版結果,而任何在地端檢查工具都無法保證索引、排名或複合式搜尋結果。

如需更深入的探討,請參閱 為 JSON-LD 選擇結構化資料檢查工具策略