结构化数据是一种用标准词汇(Schema.org)描述页面内容的代码,它让搜索引擎明确知道“这是一件商品,价格多少”“这是一篇文章,作者是谁”。读完本文,你会知道该给哪些页面加哪种Schema、怎样用JSON-LD写出来,以及上线前如何测试,避免白做或踩到违规红线。
Schema标注有什么用,没什么用
先把预期摆正。这类标注的核心价值是帮助搜索引擎理解页面,以及让页面有资格获得富媒体搜索结果,例如商品的价格和库存、文章的发布时间、面包屑路径、视频缩略图等。这类结果在搜索页面上更占位置、信息更完整,通常有助于吸引点击。
但有几点需要明确:
- 添加标注本身不是直接的排名因素,不会因为加了代码就排名上升。
- 代码正确只代表“有资格”,是否展示富媒体结果由搜索引擎根据查询、页面质量等因素决定。
- 谷歌近年收紧了部分富媒体结果,比如FAQ富结果目前只对少数权威的政府和医疗类网站展示,HowTo富结果已不再显示。不要把这些当作卖点承诺给任何人。
- 百度对Schema的支持方式与谷歌不同,主要依靠搜索资源平台的相关工具和合作接口,不能简单套用谷歌的展示效果。
三种格式里为什么选 JSON-LD
常见的标注格式有 JSON-LD、Microdata、RDFa 三种。谷歌推荐使用 JSON-LD,原因很实际:
| 格式 | 写法 | 维护难度 |
|---|---|---|
| JSON-LD | 独立的script代码块,与HTML分离 | 低,改模板不影响标注 |
| Microdata | 属性写在HTML标签上 | 高,页面改版容易破坏标注 |
| RDFa | 同样嵌入HTML属性 | 高,使用较少 |
JSON-LD可以放在head或body中,也可以由程序根据数据库字段动态输出,对WordPress、自研系统都很友好。
不同网站最常用的 Schema 类型
企业官网
首页可添加 Organization(组织信息:名称、Logo、官网、联系方式),有实体门店的本地企业可使用 LocalBusiness,补充地址、营业时间等。所有页面都可以加 BreadcrumbList 面包屑,它和网站结构优化中的面包屑导航配合使用。
内容站与博客
文章页使用 Article 或 NewsArticle,标注标题、作者、发布时间和修改时间、主图。作者信息要与页面上可见的署名一致。
电商与产品页
产品页使用 Product,配合 Offer 标注价格、币种和库存状态;确实有真实用户评价时,可以加 AggregateRating。下面是一个简化示例:
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "Product",
"name": "LED面板灯 600x600",
"image": "https://www.example.com/img/led-panel.jpg",
"description": "适用于办公室吊顶的LED面板灯",
"brand": {"@type": "Brand", "name": "Example"},
"offers": {
"@type": "Offer",
"price": "199.00",
"priceCurrency": "CNY",
"availability": "https://schema.org/InStock",
"url": "https://www.example.com/products/led-panel-light/"
}
}
</script>
部署与测试的四个步骤
- 列出页面模板。首页、栏目页、文章页、产品页分别需要什么类型,做成一张对照表,按模板而不是按单页部署。
- 从数据库字段动态生成。价格、库存、发布时间等字段直接取真实数据,避免手写后与页面不一致。
- 上线前测试。用谷歌的“富媒体搜索结果测试”检查是否符合富结果要求,用 Schema Markup Validator 检查语法是否正确。
- 上线后监控。在 Google Search Console 的“增强功能”报告里查看各类型的有效项、警告和错误,模板改动后重点回看。
这些写法可能招致人工处罚
谷歌对语义标注有明确的内容政策,违规标注可能收到“结构化数据人工处置”,导致富媒体结果资格被取消。常见问题包括:
- 标注页面上看不到的内容,例如页面没有评价却标了评分。
- 评分是商家自己给自己打的,或者把全站评价汇总标在每个产品页上。
- 价格、库存与页面实际显示不一致。
- 把广告、与页面主题无关的内容标成文章或产品。
原则只有一条:标注描述的必须是用户在页面上能看到的真实内容。
常见问题
WordPress网站需要手写结构化数据吗?
主流SEO插件会自动输出 Organization、Article、BreadcrumbList 等基础类型,一般够用。电商或特殊类型(如活动、课程)可能需要额外插件或在主题模板里补充,注意不要多个插件重复输出同一类型。
加了Schema代码,多久能看到富媒体结果?
需要等页面被重新抓取和处理,时间不固定,而且即使代码完全正确,也不保证一定展示。可以通过Search Console的增强功能报告确认是否已被识别。
Schema标注对百度有用吗?
Schema.org词汇对百度的帮助有限,百度更依赖自己平台的提交和合作机制。面向百度的站点仍可保留基础标注,但不要指望它带来与谷歌相同的展示效果。
结构化数据最好在模板层统一部署、从数据库取值,这样后期维护成本最低。如果你的网站主要做谷歌流量,SEO飞侠可以在谷歌SEO优化中一并处理Schema部署和测试。也可以通过 Telegram @Seofeixia 发来网址,我们先帮你看看现有标注有没有问题。