结构化数据写了却没生效,最常见的原因是「JSON 语法有错」或「必填字段漏了」——这两种情况搜索引擎都不会给你任何提示,只是默默不生成富媒体摘要。把代码粘进来体检一次,问题会精确到字段路径。
工具说明
JSON-LD 是搜索引擎推荐的网页结构化数据格式,写在页面的 script 标签里,用来告诉搜索「这个页面是什么、有哪些关键字段」。写错了不会报错,只会让富媒体摘要不出现,所以需要主动校验。
校验哪些项
- JSON 语法:括号是否闭合、引号是否规范、是否有尾逗号。这是最常见的致命错误。
- @context 与 @type:缺少其中任一项,搜索引擎无法识别节点类型。
- 必填字段:按类型核对——文章类需要标题、发布时间与作者;面包屑需要条目列表;商品需要名称与报价;问答页需要问答主体。
- 日期格式:应使用 ISO 8601,例如 2026-10-08 或带时区的完整形式。
- URL 格式:应使用完整绝对地址,含协议。
- @graph 结构:允许把多个节点放进一个数组,工具会逐个节点校验。
使用建议
- 先用「载入错误示例」看一次报错长什么样,再贴自己的代码。
- 错误按严重程度排序:错误会导致整块数据不被采用,警告可能影响富媒体摘要的完整性。
- 修完重跑,直到错误清零。警告可以结合自己的页面类型判断是否需要补。
- 注意本工具只做结构校验,不判断内容真实性,也不能预测搜索引擎是否一定展示富媒体摘要。
你可能还想问
为什么我在页面里写了结构化数据,搜索结果里却没变化?
常见原因有四类。一是 JSON 语法有误,解析器直接放弃整块数据;二是缺少必填字段,例如文章没有发布时间或作者;三是内容与页面可见文本不一致,搜索引擎会判定为不实标注;四是该类型当前不展示富媒体摘要——部分类型的展示权益会被平台调整甚至下线。本工具能覆盖前两类,后两类需要人工核对。
@graph 和普通单对象有什么区别?
两者都合法。单对象适合一个页面只有一种实体的情况。@graph 是一个数组容器,可以在一段脚本里声明多个互相引用的节点,例如把文章、作者、面包屑、组织信息放进同一个 @graph,再用 @id 互相引用。本工具会逐个节点分别校验必填字段。
日期写成 2026/10/08 可以吗?
不建议。结构化数据的日期应使用 ISO 8601 格式,即「年-月-日」用短横线连接,例如 2026-10-08;需要精确到时间时再追加 T 与时区,例如 2026-10-08T14:30:00+08:00。斜杠或中文日期写法容易被解析器判为无效值,导致该字段被忽略。
和站内的结构化数据生成工具有什么关系?
站内的生成工具负责按类型产出规范代码,本工具负责校验——包括校验别处复制来的、或手写修改过的代码。推荐流程是先用生成工具产出一份标准结构,再按需手工补充字段,最后用本工具复核一遍。
速查在线工具箱