结构化数据 JSON-LD 怎么做才被 AI 读懂?Schema 上手指南(2026)
搜索引擎时代,结构化数据(Schema)是为了在搜索结果里显示"富摘要";AI 搜索时代,它的意义升级了——它是 AI 准确理解你内容实体关系的核心依据。 做得好,AI 能清楚知道"这是谁写的、什么类型的内容、和哪个主题相关";做得差或不做,AI 只能靠猜。
搜索引擎时代,结构化数据(Schema)是为了在搜索结果里显示"富摘要";AI 搜索时代,它的意义升级了——它是 AI 准确理解你内容实体关系的核心依据。
做得好,AI 能清楚知道"这是谁写的、什么类型的内容、和哪个主题相关";做得差或不做,AI 只能靠猜。本文讲清 JSON-LD 的原理、最该加的类型,以及 Ghost / WordPress 等平台的实操方法。
一、什么是结构化数据与 JSON-LD
结构化数据是用一套标准化词汇(Schema.org)描述网页内容的做法,让机器能"看懂"页面里的人和事。
JSON-LD(JavaScript Object Notation for Linked Data)是目前最推荐的实现格式——它就是一段 JSON,放在 <script type="application/ld+json"> 标签里。
为什么推荐 JSON-LD 而非 Microdata / RDFa:
| 格式 | 优点 | 缺点 |
|---|---|---|
| JSON-LD | 与 HTML 解耦、易维护、Google 官方推荐 | 需额外脚本块 |
| Microdata | 直接嵌在 HTML 里 | 混乱、难维护 |
| RDFa | 表达力强 | 复杂、少用 |
二、为什么 GEO 需要结构化数据
三个作用:
1. 准确识别实体
告诉 AI"这是文章、作者是 XXX、发布于 X 年",避免误判。
2. 建立可信度(EEAT)
Organization / Person 标记能声明"谁在说话",配合 author 信息增强权威性。
3. 提升被引用概率
AI 更愿意引用"它能明确理解"的内容。结构化数据降低了 AI 的理解成本。
三、最该加的四类 Schema
1. Article(文章页必备)
标记文章的核心元数据,是最基础也最重要的一类。
{
"@context": "https://schema.org",
"@type": "Article",
"headline": "文章标题",
"description": "文章摘要",
"image": "https://example.com/cover.jpg",
"datePublished": "2026-09-10T08:00:00+08:00",
"dateModified": "2026-09-10T08:00:00+08:00",
"author": {
"@type": "Person",
"name": "作者名",
"url": "https://example.com/author/"
},
"publisher": {
"@type": "Organization",
"name": "站点名",
"logo": {
"@type": "ImageObject",
"url": "https://example.com/logo.png"
}
}
}
2. FAQPage(问答段必备)
把文章里的 FAQ 段落结构化,直接匹配 AI 的问答式检索。
{
"@context": "https://schema.org",
"@type": "FAQPage",
"mainEntity": [
{
"@type": "Question",
"name": "GEO 会取代 SEO 吗?",
"acceptedAnswer": {
"@type": "Answer",
"text": "不会。搜索引擎也在接入 AI,两者边界在融合,SEO 是基础,GEO 是延伸。"
}
}
]
}
这是性价比最高的一类。 你的文章结尾本来就有 FAQ,把它结构化,等于直接给 AI 喂问答对。
3. Organization(站点身份)
声明站点是谁、做什么,建立整体可信度。
{
"@context": "https://schema.org",
"@type": "Organization",
"name": "站点名称",
"url": "https://example.com",
"logo": "https://example.com/logo.png",
"description": "站点一句话简介"
}
4. BreadcrumbList(面包屑导航)
标记页面层级,帮助 AI 理解内容结构。
{
"@context": "https://schema.org",
"@type": "BreadcrumbList",
"itemListElement": [
{
"@type": "ListItem",
"position": 1,
"name": "首页",
"item": "https://example.com/"
},
{
"@type": "ListItem",
"position": 2,
"name": "GEO",
"item": "https://example.com/tag/geo/"
}
]
}
四、实操:各平台怎么加
Ghost(本文所在平台,已原生支持)
Ghost 默认会输出 Article、Organization、WebSite、BreadcrumbList 等结构。验证方法:
curl -s https://你的域名/文章slug/ | grep -o '"@type"[^,]*'
本站实际输出的类型:
"@type": "Article"
"@type": "BreadcrumbList"
"@type": "Organization"
"@type": "Person"
"@type": "WebSite"
如果你的 Ghost 主题没输出 FAQ,可在主题模板的 post.hbs 里手动注入 FAQPage 脚本。
WordPress
装 Yoast SEO 或 Rank Math 插件,会自动输出 Article、Breadcrumb、Organization。FAQ 块用 Rank Math 的 FAQ Block,会自动生成 FAQPage 结构。
自建站 / 静态站
在页面 <head> 里手动插入 <script type="application/ld+json"> 块。建议做成模板变量,随内容动态填充。
五、验证工具与方法
方法 1:Google 富媒体结果测试
访问 search.google.com/test/rich-results,输入 URL 查看识别结果。
方法 2:Schema Markup Validator
访问 validator.schema.org,检查语法是否正确。
方法 3:命令行快速检查
# 查看页面输出了几段 JSON-LD
curl -s https://你的域名/文章/ | grep -c 'application/ld+json'
# 查看所有 @type
curl -s https://你的域名/文章/ | grep -o '"@type"[^,]*' | sort -u
六、常见错误与避坑
| 错误 | 后果 | 正确做法 |
|---|---|---|
| 标记了但数据是空的 | AI 拿到空实体,无意义 | 字段必须有真实值 |
| 时间格式不对 | 解析失败 | 用 ISO 8601(含时区) |
| 一段 JSON-LD 塞太多类型 | 结构混乱 | 拆成多个脚本块 |
| 图片 URL 不可访问 | 实体不完整 | 用绝对路径且可公开访问 |
| 内容与页面不符 | 可能被判作弊 | 标记内容必须与页面一致 |
特别提醒:结构化数据是"如实描述",不是"编造信息"。标记了页面上没有的内容,会被判定为作弊,比不做更糟。
七、检查清单
发布每篇文章前对照:
- [ ] 有 Article 结构,含 headline / datePublished / author / publisher
- [ ] 有 FAQ 段的页面,加 FAQPage 结构
- [ ] 时间使用 ISO 8601 格式(含时区)
- [ ] 所有 URL 为绝对路径且可访问
- [ ] 站点级别有 Organization 结构
- [ ] 有面包屑的页面加 BreadcrumbList
- [ ] 用验证工具确认无语法错误
八、常见问题 FAQ
Q1:结构化数据对 SEO 和 GEO 都有效吗?
都有效。SEO 侧影响富摘要展示,GEO 侧影响 AI 对实体和内容类型的理解。一份配置,两边受益。
Q2:Ghost 已经自动输出了,还需要手动加吗?
检查是否覆盖了 Article、Organization、Breadcrumb。如果缺 FAQPage,建议手动补——FAQ 结构对 AI 问答检索的价值很高。
Q3:加了结构化数据多久见效?
取决于 AI 重新抓取和索引的时间,通常数周到一两个月。SEO 侧的富摘要通常更快显现。
Q4:一段页面可以放多个 JSON-LD 吗?
可以,而且推荐。把不同类型拆成独立的 <script> 块,比塞在一起更清晰。
Q5:JSON-LD 写错了会影响排名吗?
语法错误通常只是"无效",不会直接惩罚。但标记内容与页面不符(作弊)可能有负面影响。
相关阅读
本文由 AiGseo 优化平台原创,最后更新于 2026 年 9 月。

鄂公网安备42010502001286号