实用工具
输入
结果
结果会显示在这里。结构化数据是网页告诉 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标记生成
- 谷歌富媒体搜索结果
- schema.org 结构化数据
- 网站结构化数据