當我第一次將架構標記新增至客戶端網站時,我手動輸入了 Product 阻止主題標題,部署它,然後繼續感覺很聰明。兩週後,豐富結果測試告訴我報價對象缺少它 @type,價格是谷歌想要一個字串的數字,而一個雜散的尾隨逗號悄悄地使整個區塊無效。谷歌一直忽略它。這是沒有人用結構化資料警告你的事情:無效的 JSON-LD 不會拋出錯誤或將任何內容變成紅色。它只是默默地什麼也沒做,幾個月後你會發現你所指望的豐富結果從未出現。
詞彙表本身發佈於 模式網谷歌實際上會顯示出豐富的結果,即其列表範圍更窄 結構化資料文檔.
我以謀生為生地構建工具- toolz。dev、WP Adminify 插件、Laravel 和React 應用程式堆疊- 結構化資料是我經常做的事情之一,以至於我討厭手工完成它,很少忘記確切的任務每次的屬性名稱。所以我建造了 模式標記產生器 刪除讓我付出最大代價的兩種故障模式:錯誤的嵌套和靜默無效。本指南介紹了模式標記的實際用途、生成器如何建立它,以及阻礙有效標記獲得豐富結果的具體錯誤。
TL;DR: 模式標記是結構化資料(使用模式。org 詞彙表),可以準確地告訴搜尋引擎頁面的內容,使其有資格獲得豐富的結果,例如常見問題手風琴、產品價格和麵包屑。 Google 推薦 JSON-LD 格式 - 一種獨立的格式
<script type="application/ld+json">塊。生成器為九種常見類型建立有效的 JSON-LD,嵌套子對象,例如PostalAddress和Offer正確,標記缺少所需和推薦字段,並在瀏覽器中 100% 運行,因此您輸入的任何內容都不會上傳。
什麼是模式標記?為什麼它很重要?
模式標記是描述頁面內容的標準化方式,以便機器可以理解它,而不僅僅是渲染它。詞彙來自 schema。org,這是一個由 Google、Microsoft、Yahoo 和 Yandex 支援的共享專案。當您將頁面標記為 Article(您正在告訴搜尋引擎"這是一篇新聞或部落格文章,這是它的標題,這是誰寫的,這是它發佈的時間。"這種結構化描述使頁面有資格獲得豐富的結果 - 具有星級評級、價格、常見問題解答下拉、活動日期和麵包屑路徑的增強列表,比純藍色鏈接佔用更多空間並獲得更多點擊量。
過去幾年,它重要的原因已經改變了。它過去純粹是關於 Google 的豐富結果。現在結構化資料也為人工智慧答案引擎和 Google' 提供資訊;人工智慧概述。當 ChatGPT、Perplexity 或 Gemini 嘗試總結您的業務或哪個產品與查詢匹配時,乾淨的結構化資料是幫助他們正確了解事實的訊號之一。一個明確聲明自己的頁面 Organization 對於任何機器來說,使用名稱、徽標和社交設定檔都比將所有內容隱含在 HTML 中的機器更容易推理。
問題是結構化資料是無情的。它是代碼,代碼必須完全正確。拼寫的屬性 datePublish 代替 datePublished 被簡單地忽略了。一個 Offer 沒有一個 @type 不被視為報價。由於這些錯誤都沒有破壞可見頁面,因此它們會無限期地隱藏在生產中。這就是生成器填補的空白 - 不是為您編寫概念,而是每次都正確獲取語法和結構。
為什麼選擇 JSON-LD 而不是 Microdata 或 RDFa?
將 schema。org 資料新增至頁面有三種方法,這有助於理解為什麼生成器只產生其中一種。
微觀數據 和 RDFa 使用額外的屬性將結構化資料直接編織到可見的 HTML 中 - itemscope, itemprop, property,等等。你的 <div> 對於產品評論,可以獲得標記每條可見文字的屬性。這有效,但它會將您的標記與頁面結構緊密耦合。更改佈局,您就有可能破壞模式。它也很冗長且難以閱讀。
JSON-LD 採取相反的方法。它將所有結構化資料放在一個獨立的資料中 <script type="application/ld+json"> 塊,通常在 <head>,與可見的 HTML 完全分開。正是因為這種分離,Google多年來一直推薦 JSON-LD:您可以添加它、更新它或透過標籤管理器注入它,而無需觸摸模板。這是每個現代模式教學所教授的格式,也是生成器輸出的格式。
| 格式 | 它居住的地方 | 易於維護 | Google'的立場 |
|---|---|---|---|
| JSON-LD | 單身的 <script> 區塊,與 HTML 分開 |
最簡單 - 編輯一個區塊 | 推薦 |
| 微觀數據 | 可見 HTML 內的屬性 | 更難 - 與佈局耦合 | 支持 |
| RDFa | 可見 HTML 內的屬性 | 更難 - 與佈局耦合 | 支持 |
如果您在 WordPress 中工作,JSON-LD 也是大多數 SEO 外掛程式注入的內容,而像 WP Adminify 這樣的工具可以乾淨地放在旁邊。因為它是一個獨立的區塊,因此您可以在此處產生它並將其貼上到自訂 HTML 欄位、標籤管理器或 Laravel Blade 佈局中,而無需任何特定於框架的體操。
如何使用模式標記產生器?
工作流程是圍繞選擇類型並填寫簡短表格而構建的,並具有即時預覽,以便您在打字時看到 JSON-LD 組裝。
步驟 1 - 選擇模式類型。 從組織、本地業務、網站、文章、產品、常見問題、麵包屑清單、人員或活動中選擇。表格立即切換到類型所需的欄位。這九個涵蓋了絕大多數中小型網站實際需要加價的內容。
第 2 步 - 填寫欄位。 必填欄位標有星號。鍵入時,該工具會組裝 JSON-LD 並刪除任何留空的字段,因此您永遠不會出現空字段 "" 屬性污染輸出。對於基於位址的類型(例如 LocalBusiness 和 Event),各個位址欄位被折疊成正確鍵入的 PostalAddress 自動對象。
第 3 步 - 觀看驗證。 生成器標記兩種問題。錯誤(缺少所需欄位、格式錯誤的 URL)會阻止乾淨的結果並以紅色顯示。警告(缺少 Google 推薦的欄位),例如 image 或者 datePublished,或缺少佔位符的搜尋 URL 範本)以琥珀色顯示 - 標記仍然有效,但您將豐富的潛在結果留在桌面上。
步驟 4 - 複製並部署。 在完整之間切換 <script> 標籤(準備貼到您的標籤中) <head>)和原始 JSON(用於標籤管理器和 CMS 欄位)。腳本輸出會逃逸原本會讓雜散的角色 </script> 在您的資料中,打破頁面。然後使用 Google's 豐富結果測試驗證即時頁面。
因為一切都在客戶端運行,所以可以在未發布的產品頁面、暫存環境和 NDA 下的客戶端工作上安全使用。您的價格、活動詳細資訊和內部 URL 永遠不會離開瀏覽器 - 網站上每個工具背後的隱私立場都是相同的,我在 中寫過 資料隱私指南.
我應該實際使用什麼模式類型?
並非每一頁都需要標記,堆積你無法支援的類型比沒有更糟。這就是我對生成器覆蓋的九個的看法。
組織 屬於您的主頁或關於頁面 - 它是提供知識面板並幫助 Google 將您的品牌與其社交資料連接的模式 sameAs. 網站 與它配對,可以透過 a 聲明 Sitelinks 搜尋框 SearchAction,讓使用者直接從結果頁面搜尋您的網站。 本地業務 如果您有實體位置,則至關重要:它包含您的地址、電話、價格範圍和營業時間,並且支援本地套餐和地圖結果。
文章 (產生器發射時帶有 Article 類型,同樣適用於部落格文章)用標題、作者、出版商和發布日期標記編輯內容。 產品 描述一些待售的東西,帶有嵌套 Offer 承載價格、貨幣和可用性 - 這就是價格和可用性片段的動力。 活動 涵蓋任何有日期和地點的內容,從會議到網路研討會。
常見問題頁面 和 麵包屑清單 是結構性的而不是關於"事物。&引用;常見問題解答頁面標記問答內容;請注意,google 將常見問題豐富的結果縮小到權威的政府和健康網站,但該標記仍然可以幫助其他搜尋引擎和人工智慧答案引擎解析您的 Q& A。 BreadcrumbList 產生結果標題下顯示的麵包屑軌跡,從而改進您的 URL 結構讀取方式。 人 對個人(作者、創始人或公眾人物)進行標記,對於作者簡介和 EEAT 訊號很有用。
我遵循的規則是:標記頁面的真實內容,並且僅聲明反映頁面上實際可見內容的屬性。 Google'該指南明確規定結構化資料必須描述真實的、可見的內容 - 標記頁面上未出現的價格是一種違規行為,而不是捷徑。
生成器如何保持標記有效?
價值在於容易用手弄錯的細節。有些值得大聲喊出來。
正確嵌套 @type. 在 JSON-LD 中,嵌套物件不是普通的子物件 - 每個物件都需要自己的子物件 @type. 地址是a PostalAddress,報價是一個 Offer一篇文章'作者是a Person(其出版商) Organization 其標誌為 ImageObject. 生成器以正確的類型建立每一個,以便解析器識別它們,而不是將它們視為匿名 blob。
修剪空。 將欄位留空應刪除屬性,而不是發出 "telephone": "". 空字串和空數組會自動從輸出中刪除,因此您複製的內容始終是乾淨的。
腳本安全轉義。 內聯 JSON-LD 中最危險的角色是 a < - 具體來說就是序列 </script> 出現在您的資料中(例如,在描述中),這將提前終止腳本區塊並破壞頁面。生成器逃脫 <, >, 和 & 在使用 unicode escape 的腳本標籤輸出中,這正是 Google' 自己的範例所做的。
所需和建議的意識。 每種類型都有自己的 Google 要求與推薦清單。文章真的想要一個 image 和 datePublished;產品想要一個 price;事件需要一個 startDate. 該工具將硬要求(它將其視為錯誤)與建議(警告)區分開來,因此您知道 " 之間的區別。這行不通;和&引用;這可以做得更好。&引用;
如果您正在組裝更廣泛的技術工作流程,模式產生器自然地與其他 SEO 實用程式並存 - 元標記產生器 對於您的標題、描述和 Open Graph 標籤,以及 XML 網站地圖產生器 用於提交您的 URL。它們一起涵蓋了頁面上的大部分技術 SEO 表面,因此我將它們分組在 web 開發人員工具包概述.
如何測試和部署結構化資料?
產生有效的 JSON-LD 是一半的工作;另一半是確認谷歌按照您的意圖讀取它。
從 Google' 開始 豐富的結果測試,取得 URL 或接受貼上程式碼和報告,其中豐富的結果類型符合頁面資格,以及任何錯誤或警告。然後透過執行相同的標記 模式標記驗證器 在 validator。schema。org,它檢查是否符合 schema。org 詞彙表本身,而不是 Google' 的豐富結果要求。這兩個捕捉不同的東西:豐富結果測試告訴您是否有資格使用特定的 Google 功能,而驗證器告訴您標記在結構上是否為合理的 schema。org。
頁面上線後,增強就會報告 谷歌搜尋控制台 追蹤一段時間內的效能並標記 Google 在爬行過程中發現的錯誤。在這裡,您可以發現僅大規模出現的問題 - 例如,發出重複麵包屑位置的模板,或偶爾省略所需欄位的產品來源。
對於部署,貼上 <script> 阻止進入 <head> 它所描述的特定頁面。不要在每個頁面上運行的全域模板中放置單一產品區塊 - 標記必須與其所在的頁面相符。在 CMS 中,使用平台提供給您的任何自訂 HTML 或 SEO 欄位。在標籤管理器中,使用自訂 HTML 標籤並複製 JSON。在 React 或 Laravel 應用程式中,注入區塊伺服器端,以便爬蟲在初始 HTML 中而不是在補水後看到它。
我仍然看到的常見錯誤
少數錯誤一次又一次地出現,每個錯誤都會產生看起來不錯但沒有任何作用的標記。
經典是 標記不可見內容 - 新增頁面上任何位置未出現的評論評級或價格。谷歌明確禁止這樣做,並可以為此發布手動操作。第二個是 嵌套物件上的類型錯誤,通常是失蹤 @type 在地址或報價上。第三個是 合併相似的類型喜歡使用 Product 在類別清單頁面上標記,而不是在單一產品上標記。第四個,我個人的宿敵,是 手動編輯造成的語法錯誤 - 使整個區塊無效的尾隨逗號或未轉義的引用。
這些都是產生器贏得保留的原因。它無法知道您的價格是否在頁面上可見(即您身上),但它永遠不會發出尾隨逗號(缺失) @type,或空屬性。僅此一項就消除了結構化資料默默失敗的大部分方式。為了了解圍繞此類工具的開發人員工作流程的更深層次的背景, 編碼工具指南 是一本很好的伴侶讀物。
常見問題
什麼是模式標記?
模式標記是描述頁面和#39 的結構化資料;使用共享模式。org 詞彙向搜尋引擎添加內容。添加它可以使頁面有資格獲得豐富的結果,例如常見問題手風琴、產品價格、評論星星和麵包屑。 JSON-LD(該工具產生的格式)是 Google 推薦的語法,因為它位於與可見 HTML 分開的單一腳本標籤中。
JSON-LD、Microdata 和 RDFA 有什麼不同?
這三種方法都是將 schema.org 結構化資料新增至頁面的方法。 MicroData 和 RDFA 是編織到可見 HTML 中的屬性,而 JSON-LD 是腳本標籤中 JSON 的獨立區塊。 Google 推薦 JSON-LD,因為它更容易添加、更新和與頁面標記分開。 出於這個原因,該工具輸出 JSON-LD。
我要將生成的 JSON-LD 放在哪裡?
貼上滿 <script type="application/ld+json"> 標記進入 <head> 它所描述的頁面,或其中的任何地方 <body> - Google 在任一位置讀取它。如果您使用 Google 標籤管理器,請複製 JSON 並透過自訂 HTML 標籤新增它。始終將標記放置在其描述的內容的同一頁面上,而不是將其應用到任何地方的範本。
添加模式標記是否保證豐富的結果?
不 . 有效的結構化資料使頁面有資格獲得豐富的結果,但 Google 決定是否根據品質、相關性和自己的指導方針來顯示它們。 您的標記還必須反映頁面上實際可見的內容。 將模式視為對豐富結果的要求,而不是打開它們的開關。
如何測試我的結構化資料?
透過 Google' 運行產生的標記;富結果測試和模式標記驗證器(schema。org's 驗證器)。兩者都會解析您的 JSON-LD 並報告缺少所需的欄位或語法錯誤。頁面上線後,Google 搜尋控制台增強報告會追蹤您的結構化資料隨時間的表現。
每種類型需要哪些欄位?
需求因類型而異:文章需要標題,產品需要名稱,活動需要名稱和開始日期,FAQpage 至少需要一個問題和答案。 此工具標記所需的欄位並阻止輸出,直到它們被填滿,同時也警告建議欄位,以提高您獲得豐富結果的機會。
我可以為我的頁面產生常見問題模式嗎?
是的。 選擇 FAQPage 類型,將每個問題加上其答案,工具會自動建立問答物件的維護陣列。 請注意,Google 現在主要針對權威政府和健康網站顯示了豐富的常見問題解答結果,但標記對於其他搜尋引擎和人工智慧應答引擎仍然有效且有用。
我的資料是保密的嗎?
是的。 JSON-LD 完全在您的瀏覽器中使用簡單的 JavaScript 組裝。您輸入的任何內容(包括未發布的價格、事件詳細資訊或私人 URL)都不會被傳輸、記錄或存儲,並且生成器在加載後無需網路連接即可繼續工作。



