實用工具
輸入
結果
結果會顯示在這裡。結構化資料是網頁告訴 Google、Bing 以及各種 AI 搜尋引擎「我是什麼」的方式——一篇有作者和日期的文章、一件有價格的商品、一場有時間地點的活動——而 JSON-LD 是 Google 推薦的寫法。手寫時必須記得巢狀的 @type 物件和精確的屬性名稱,很容易出錯。在這裡選好類型,寫幾行 author.name: 林偉、offers.price: 0 這樣的純文字,就能得到可以直接貼上的 script 程式碼區塊。每次產生都會對照 Google 搜尋中心針對該類複合式搜尋結果列出的必要與建議屬性進行檢查,上線前就知道缺了什麼。如果要在自己的 TypeScript 程式碼中撰寫有型別檢查的 JSON-LD,可以使用 google/schema-dts(Apache-2.0),它把完整的 Schema.org 詞彙做成了型別。
它是怎麼運作的
- 含有點號的鍵會建立巢狀物件,常見屬性會自動補上 @type:author 變成 Person,publisher 變成 Organization,offers 變成 Offer,address 變成 PostalAddress。
- 同一個鍵寫多次會變成陣列(多個 sameAs、多張圖片),數字以數字輸出,InStock、EventScheduled 這類列舉值會展開成完整的 schema.org 網址。
- FAQ 頁面以 q: 和 a: 成對撰寫,導覽標記每行一個「名稱 | 網址」,在地商家的營業時間寫成「hours: Mo-Fr 09:00-18:00」這樣的行即可。
- 輸出中的每個 < 都會跳脫為 \u003c,即使某個值含有 </script>,也無法提前關閉標籤、在頁面中注入內容。
- 輸入留空直接執行,會給出所選類型的起始範本。
你的資料去了哪裡
哪也沒去。本工具完全在你的瀏覽器裡執行:你貼上的文字由頁面處理,不會傳輸到任何伺服器,也不會寫進任何紀錄。
本工具免費且免登入,執行結果只存在於你目前的頁面裡,不會被儲存到任何地方。
它要花多少
本工具完全免費,不需要登入,也不消耗點數。
常見問題
- 加了 JSON-LD 就一定會有複合式搜尋結果嗎?
- 只是取得資格而已。是否顯示由 Google 決定,標記描述的內容必須在頁面上實際可見,而且有些類型已經限縮或取消:HowTo 結果在 2023 年下架,FAQ 複合式搜尋結果則在 2026 年 5 月被 Google 全面停用。FAQPage 標記本身仍是有效的 Schema.org,保留無害,所以工具照常產生,但會附上提示。
- 必要與建議有什麼不同?
- 必要屬性決定有沒有資格:缺少 offers.price 以及評分或評論的 SoftwareApplication、缺少 location 地址的 Event,都拿不到對應的複合式搜尋結果。建議屬性影響呈現效果,以及 Google 對頁面的理解程度。工具會分開列出兩者,屬性名稱與 Google 文件一致。
- 產生的程式碼要放在哪裡?
- 放在頁面 HTML 的 head 或 body 都可以,Google 兩處都會讀取。在 Next.js 中,渲染一個 type 為 application/ld+json 的 script 元素即可。上線後把網址貼到 Google 的複合式搜尋結果測試,或把程式碼貼到 validator.schema.org,確認解析結果符合預期。
- 可以用更具體的類型嗎,例如 BlogPosting 或 Restaurant?
- 可以,加一行 @type: 即可。BlogPosting、NewsArticle 可用在 Article 的位置,WebApplication、MobileApplication 可用在 SoftwareApplication 的位置,LocalBusiness 可以換成 Restaurant、Store、Dentist 等任何子類型。檢查規則仍依你在下拉選單中選的基礎類型執行。
背後的開源專案
本工具是獨立實作,並未打包第三方函式庫。google/schema-dts(Apache-2.0)在程式碼層面做的是同一件事——如果你需要在自己的程式裡實作它,從那裡開始,而不是呼叫一個網頁。
google/schema-dts也常被稱作
- json-ld 產生器
- 結構化資料產生
- schema 標記產生器
- google 複合式搜尋結果
- schema.org 結構化資料
- 網站結構化資料