上一课你解决了什么
如果你做完了国际 §5 的 SSR 修复 + robots.txt 配置 + Core Web Vitals,AI 爬虫现在能正确读到你的内容。
但下一个问题来了:AI 读到了内容,仍然不知道"你是谁"。
打开你网站首页,问自己 3 个问题:
- AI 怎么知道你是一个组织(不是一个人 / 一篇文章 / 一个产品列表)?
- AI 怎么知道你和"LinkedIn 上同名公司"是同一个实体?
- AI 怎么知道你的内容作者是一个有专业资质的人,不是一个匿名机器人?
这 3 个问题的答案是同一件事:Schema 结构化数据,一份给 AI 读的"机器可读说明书"。
这一课讲清楚 4 件事:
- Schema 在 6 维体系里占 10%,但它是实体识别加速器,影响远大于 10%
- 6 个关键 schema 完整模板(Organization / LocalBusiness / Article+Person / Product / SoftwareApplication / WebSite)
- 2023 年的两个重大变化:HowTo 已废弃 / FAQPage 受限,你之前学的可能过时了
- JS 注入 schema 的陷阱:前端框架默认行为让 AI 看不到 schema
学完你能用 1-2 小时把核心 schema 部署到你的站点,把 AI 引用率从"AI 不知道你是谁"推到"AI 把你识别为完整实体"。
Schema 是什么
先把这个核心概念定义清楚。
Schema(schema.org 词汇表):一套被 Google / Bing / 主要 AI 厂商共同支持的"实体描述词汇表"。你用 JSON-LD 格式把你的页面"是什么"告诉爬虫,爬虫直接拿到结构化事实,不需要从自由文本里推断。
JSON-LD 是 Schema 的推荐格式:
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "Organization",
"name": "Your Brand",
"url": "https://yourdomain.com"
}
</script>
这段 JSON 直接告诉爬虫:“这个页面属于一个组织,名字叫 Your Brand,主页是 yourdomain.com”。AI 拿到这条信息,就把"Your Brand"当成已识别的实体,不需要从页面文本里猜。
Schema 12 组件权重分布
Schema 维度的 10 分按 12 组件分配。下面这张图把每个组件的权重和评分逻辑摆出来。
关键观察:组件 ① + ② 合计 30 分。做好 Organization 完整字段 + sameAs 5+ 平台是 schema 维度最大杠杆。其他 10 个组件加起来 70 分,但每个都相对独立,可以渐进式补齐。
6 个关键 schema 模板
下面给出每页该放哪种 schema 的对照 + 完整模板。直接拷过去改字段就行,不需要从零写。
模板 1:Organization(每个商业站主页必备)
放在主页 <head> 里。这是你品牌的"身份证"。
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "Organization",
"@id": "https://yourdomain.com/#organization",
"name": "Your Brand",
"url": "https://yourdomain.com",
"logo": {
"@type": "ImageObject",
"url": "https://yourdomain.com/logo.png",
"width": 600,
"height": 60
},
"description": "1-2 句组织描述,包含核心价值主张",
"foundingDate": "2024-01-15",
"sameAs": [
"https://en.wikipedia.org/wiki/Your_Brand",
"https://www.wikidata.org/wiki/Q12345",
"https://www.linkedin.com/company/yourbrand",
"https://www.youtube.com/@yourbrand",
"https://twitter.com/yourbrand",
"https://www.crunchbase.com/organization/yourbrand",
"https://github.com/yourbrand"
],
"contactPoint": {
"@type": "ContactPoint",
"telephone": "+1-555-555-5555",
"contactType": "customer service",
"email": "[email protected]",
"availableLanguage": ["English", "Chinese"]
},
"knowsAbout": [
"Topic 1",
"Topic 2",
"Topic 3"
]
}
</script>
3 个关键字段:
@id是站内固定锚点(如#organization),其它 schema 通过@id引用同一实体,避免 AI 创建重复实体sameAs越完整 = 实体识别越准确(详见国际 §3)knowsAbout是"组织专长话题",AI 引用决策时直接读这个字段判断"你是不是这个领域的权威"
模板 2:LocalBusiness(本地商业必加)
如果你是本地实体店 / 餐厅 / 服务,继承 Organization,加本地特有字段:
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "LocalBusiness",
"@id": "https://yourdomain.com/#localbusiness",
"name": "Your Business",
"url": "https://yourdomain.com",
"telephone": "+1-555-555-5555",
"priceRange": "$$",
"address": {
"@type": "PostalAddress",
"streetAddress": "123 Main St",
"addressLocality": "San Francisco",
"addressRegion": "CA",
"postalCode": "94105",
"addressCountry": "US"
},
"geo": {
"@type": "GeoCoordinates",
"latitude": "37.7749",
"longitude": "-122.4194"
},
"openingHoursSpecification": [
{
"@type": "OpeningHoursSpecification",
"dayOfWeek": ["Monday", "Tuesday", "Wednesday", "Thursday", "Friday"],
"opens": "09:00",
"closes": "17:00"
}
],
"aggregateRating": {
"@type": "AggregateRating",
"ratingValue": "4.8",
"reviewCount": "127",
"bestRating": "5"
}
}
</script>
模板 3:Article + Person(博客 / 媒体每篇必加)
放在每篇文章页 <head> 里。作者必须是 Person 对象,这是 AI 平台最强 E-E-A-T 信号之一。
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "Article",
"@id": "https://yourdomain.com/blog/article-slug/#article",
"headline": "文章标题",
"description": "文章简介",
"url": "https://yourdomain.com/blog/article-slug",
"datePublished": "2026-05-02",
"dateModified": "2026-05-03",
"image": {
"@type": "ImageObject",
"url": "https://yourdomain.com/images/article-cover.jpg",
"width": 1200,
"height": 630
},
"author": {
"@type": "Person",
"@id": "https://yourdomain.com/about/jane-doe/#person",
"name": "Jane Doe",
"url": "https://yourdomain.com/about/jane-doe",
"jobTitle": "Senior SEO Researcher",
"knowsAbout": ["SEO", "GEO", "Search Optimization"],
"sameAs": [
"https://www.linkedin.com/in/janedoe",
"https://twitter.com/janedoe",
"https://github.com/janedoe"
],
"worksFor": {
"@type": "Organization",
"@id": "https://yourdomain.com/#organization"
}
},
"publisher": {
"@type": "Organization",
"@id": "https://yourdomain.com/#organization"
},
"speakable": {
"@type": "SpeakableSpecification",
"cssSelector": [".article-summary", "h2"]
}
}
</script>
两个关键细节:
- 作者必须是 Person 对象:不能是
"author": "Jane Doe"字符串。AI 系统从对象里读sameAs完成作者身份验证 - speakable 是被严重低估的属性:明确告诉 AI 这部分内容适合做语音播报或 AI 助手回答
模板 4:Product(电商必加)
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "Product",
"@id": "https://yourdomain.com/products/product-slug/#product",
"name": "Product Name",
"description": "Product description",
"image": [
"https://yourdomain.com/images/products/product-1.jpg",
"https://yourdomain.com/images/products/product-2.jpg"
],
"brand": { "@type": "Brand", "name": "Your Brand" },
"sku": "SKU-12345",
"offers": {
"@type": "Offer",
"url": "https://yourdomain.com/products/product-slug",
"price": "49.99",
"priceCurrency": "USD",
"availability": "https://schema.org/InStock",
"seller": { "@type": "Organization", "@id": "https://yourdomain.com/#organization" }
},
"aggregateRating": {
"@type": "AggregateRating",
"ratingValue": "4.6",
"reviewCount": "523",
"bestRating": "5"
}
}
</script>
模板 5:SoftwareApplication(SaaS 必加)
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "SoftwareApplication",
"@id": "https://yourdomain.com/#software",
"name": "Your SaaS",
"url": "https://yourdomain.com",
"description": "1-2 句产品描述",
"applicationCategory": "BusinessApplication",
"operatingSystem": "Web, Windows, macOS",
"offers": {
"@type": "AggregateOffer",
"lowPrice": "29",
"highPrice": "299",
"priceCurrency": "USD",
"offerCount": "3"
},
"aggregateRating": {
"@type": "AggregateRating",
"ratingValue": "4.7",
"reviewCount": "850",
"bestRating": "5"
},
"featureList": ["Feature 1", "Feature 2", "Feature 3", "Feature 4"],
"softwareVersion": "2.5",
"sameAs": [
"https://www.g2.com/products/yoursaas",
"https://www.capterra.com/p/yoursaas",
"https://www.producthunt.com/products/yoursaas"
]
}
</script>
为什么 featureList 是强引用信号:AI 在回答"X 有哪些功能"类查询时,直接抽取 featureList,比从 HTML 文本里推断准确得多。
模板 6:WebSite + SearchAction(每个站主页必加)
让站出现在 Google sitelinks 搜索框里。
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "WebSite",
"@id": "https://yourdomain.com/#website",
"name": "Your Site",
"url": "https://yourdomain.com",
"publisher": {
"@type": "Organization",
"@id": "https://yourdomain.com/#organization"
},
"potentialAction": {
"@type": "SearchAction",
"target": {
"@type": "EntryPoint",
"urlTemplate": "https://yourdomain.com/search?q={search_term_string}"
},
"query-input": "required name=search_term_string"
}
}
</script>
2023 年的两个重大变化
如果你的 schema 知识来自 2022 年之前,下面这两个变化必须知道,否则你写的某些 schema 已经无效。
变化 1:HowTo 已从 Google 富片段移除(2023-09)
之前:HowTo schema 让步骤教程在 Google 搜索结果显示富片段(带步骤图标)。
现在:Google 在 2023 年 9 月完全移除 HowTo 富片段。Google 搜索结果不再显示 HowTo 富片段,做了也没有视觉收益。
判别口径:
- 如果你写 HowTo 是为了 Google 富片段 → 删掉以减页面体积
- 如果你写 HowTo 是为了让 AI 更好理解你的"步骤式内容" → 保留作为 AI 语义信号(schema 仍然合法,AI 仍可解析)
我的建议:新内容不要再写 HowTo schema,直接用清晰的 H2 步骤标题 + 编号列表,AI 解析效果同样好,且省体积。
变化 2:FAQPage 受限(2023-08)
之前:FAQPage schema 让 Q&A 在 Google 搜索结果显示富片段。
现在:Google 在 2023 年 8 月限制 FAQPage 富片段:仅政府 / 卫生当局站点显示富片段;商业站完全不显示。
判别口径:
- 普通商业站 → FAQPage 不再显示 Google 富片段;但保留对 AI 仍有 Q&A 语义价值
- 政府 / 卫生当局站 → FAQPage 仍显示富片段,建议保留
我的建议:商业站可以继续用 FAQPage(AI 解析 Q&A 仍有价值),但不要预期 Google 搜索结果显示富片段。
已废弃 schema 完整清单
| Schema | 状态 | 时间 | 处理建议 |
|---|---|---|---|
| HowTo | 从 Google 富片段移除 | 2023-09 | 删除以减体积;或保留作为 AI 语义信号 |
| FAQPage | 受限 | 2023-08 | 仅政府/卫生当局站显示富片段;保留对 AI 有 Q&A 价值 |
| SpecialAnnouncement | 已废弃 | — | 删除(COVID 用的) |
| CourseInfo | 已废弃 | — | 用新版 Course 结构 |
JS 注入 schema 的陷阱
国际 §5 讲过:AI 爬虫不执行 JavaScript。这点对 schema 同样适用:JS 注入的 schema 对 AI 爬虫等于不存在。
Google 2025 年 12 月官方指南:JS 注入的 JSON-LD 可能被延迟处理。AI 爬虫直接看不到。
判定规则:
- Schema 在初始 HTML 响应里 → ✅ 即时处理
- Schema 由 React/Vue/Angular 在水合后插入 → ❌ Google 延迟,AI 爬虫完全看不到
解决:把 schema 写进 SSR 输出 / 服务端模板,不要靠前端框架的 portal 注入。
检测方法:用 curl 抓取,搜索 <script type="application/ld+json">:
curl -s https://yoursite.com/page | grep "application/ld+json"
- grep 命中 → schema 在初始 HTML 里 ✅
- grep 没命中、但浏览器 DevTools 能看到 schema → JS 注入 ❌,需要改成 SSR 输出
现在动手做一次"Schema 5 步部署"
第 1 步:主页 Organization + WebSite + SearchAction(10 分钟)
把 Organization 模板 + WebSite 模板的 JSON-LD 拷到主页 <head> 里。两个 schema 用 @id 互相引用。最少 5 个 sameAs 平台。
第 2 步:博客 Article + Person(10 分钟)
每篇博客文章页 <head> 加 Article schema。作者必须是 Person 对象(不是字符串)。Person 含 knowsAbout + sameAs。
第 3 步:业务类型特定 schema(5 分钟)
按你的业务类型选 1 个:
- 电商 → 产品页加 Product schema
- SaaS → 产品页加 SoftwareApplication schema
- 本地 → 主页加 LocalBusiness schema
- 普通博客 → 跳过这步
第 4 步:Schema Validator 校验(5 分钟)
把每个页面 URL 粘到 validator.schema.org,看错误 / 警告。修掉所有 ❌ 错误,⚠️ 警告酌情修。
第 5 步:curl 检测 SSR
curl -s https://yoursite.com | grep -A 2 "application/ld+json"
确认 schema 在初始 HTML 里。如果 grep 没命中就是 JS 注入了,要改成 SSR 输出。
6 条 Common Errors(schema 校验时常见错误)
| 错误 | 表现 | 修复 |
|---|---|---|
缺 @context |
没有 @context: "https://schema.org" |
加上 |
| 拼错属性名 | datePublihed 而非 datePublished |
校对 |
| 值类型错 | URL 字段填字符串 / 日期字段非 ISO 8601 | 修正类型 |
| 占位符值 | name: "YOUR_NAME" 没替换 |
替换为真实值 |
| 重复冲突 schema 块 | 两个 Organization schema 信息冲突 | 合并或保留一个 |
| 嵌套错误 | author 是字符串而非 Person 对象 | 改成对象 |
反话术:服务商常说什么,你应该警惕什么
判定:⚠️ 部分有效但容易过度。
schema 价值不是按"种类数量"线性叠加。把所有 schema 类型(Article + HowTo + FAQ + Recipe + Event + Job 等等)都堆到首页 = 实体识别混乱,AI 不知道你到底是什么类型实体。正确做法是按页面意图选 schema:主页 = Organization + WebSite;产品页 = Product / SoftwareApplication;博客文章 = Article + Person;本地店 = LocalBusiness。每页只放该页该有的 1-3 个 schema,不要堆 10+。如果服务商按"schema 种类数"报价("我给你做 30 种 schema"),他在卖你不需要的工作量。
判定:❌ 反向降权。
JSON-LD 是 schema.org 和 Google 推荐格式(独立 script 标签 + 不污染 HTML)。Microdata(属性内联到 HTML 标签里)和 RDFa 是更早的格式:现在 Google 仍支持但**不推荐**,且 Schema 12 组件评分里 JSON-LD 5 分 / Microdata 0 分。如果服务商建议你用 Microdata 或 RDFa,他在用 2015 年的 SEO 知识包装现代 schema 服务。新建站全部用 JSON-LD,旧站逐步迁移到 JSON-LD。
关键术语表
| 术语 | 解释 | 这一课怎么用 |
|---|---|---|
| Schema.org | Google / Bing / 主要 AI 厂商共同支持的"实体描述词汇表" | 给 AI 读的"机器可读说明书" |
| JSON-LD | Schema 的推荐格式(独立 script 标签) | 唯一推荐格式,不要用 Microdata |
| @id | schema 内部锚点,用于跨 schema 引用同一实体 | 避免 AI 创建重复实体 |
| sameAs | 实体的多渠道存在 URL 数组 | 单点最大杠杆 |
| knowsAbout | Organization / Person 的"专长话题"数组 | 强 GEO 信号,告诉 AI 你是哪个领域权威 |
| speakable | Article 的"适合语音播报"标记属性 | 被严重低估的属性 |
| Person 对象 | 作者必须是对象不是字符串 | E-E-A-T 关键信号 |
| 实体识别加速器 | Schema 让 AI 快速识别"你是什么实体" | GEO 时代 schema 的根本价值 |
| Schema Validator | validator.schema.org 官方校验器 | 部署前必跑 |
本课小结
- Schema 是 AI 实体识别加速器:10% 权重但是是给 AI 读的"机器可读说明书"
- 12 组件评分:做好 Organization 完整 (15) + sameAs 5+ (15) 已经拿到 30 分
- 6 个关键 schema 模板:Organization / LocalBusiness / Article+Person / Product / SoftwareApplication / WebSite,直接拷模板改字段
- 作者必须是 Person 对象:不能是
"author": "Jane Doe"字符串 - HowTo 已废弃 / FAQPage 受限(2023):商业站 FAQPage 不再显示 Google 富片段,但 AI 仍解析 Q&A
- JS 注入 schema 等于不存在:必须 SSR 输出,curl 检测在初始 HTML 里
- 每页只放 1-3 个 schema:堆 30 种 = 实体识别混乱,按页面意图选
完成本课的下一步
1. 把"Schema 5 步部署"做完:主页 Organization + WebSite,博客每篇 Article + Person
2. 用 [validator.schema.org](https://validator.schema.org/) 验证每个页面,修掉所有 ❌
3. curl 检测:
curl -s yoursite.com | grep "application/ld+json",确认 schema 在初始 HTML 里4. 如果是 React / Vue 站点 + curl 没命中,参考国际 §5 改 SSR
下一课预告:第 7 课「Platform 平台差异化:5 大 AI 引擎引用偏好对照」。前 6 课讲了 Citability / Brand Authority / E-E-A-T / Technical / Schema 五个维度,下一课讲第 6 维:每个 AI 平台(ChatGPT / Perplexity / Claude / Gemini / Copilot)各自的引用偏好怎么不同。
国际生态篇 6/13 完成。如果你做了 Schema 5 步部署 + sameAs 改造(详见 §3),你已经把"AI 实体识别"从 0 推到 70+,接下来 AI 引用决策时能正确把你识别为完整实体。