itemtype必须与itemscope成对使用,单独存在无效;其值须为合法HTTPS URL(如https://schema.org/Article),大小写敏感且不可省略协议或路径,否则整个结构化数据块被忽略。

itemtype 属性必须搭配 itemscope 使用
单独写 itemtype 没有效果,浏览器完全忽略。它只在元素同时有 itemscope 时才被解析为结构化数据的类型声明。
常见错误是只加 itemtype 却漏掉 itemscope,导致 Google Rich Results Test 等工具检测不到任何 Schema 信息。
-
itemtype值必须是合法的 URL(通常是https://schema.org/下的类) - 推荐用 HTTPS 版本,HTTP 版本在部分新环境可能被拒绝
- 多个类型可空格分隔,如
itemtype="https://schema.org/Person https://schema.org/LocalBusiness"
用 schema.org 的标准类型最稳妥
自定义 URL 或非 schema.org 地址基本不被搜索引擎识别。实际项目中,99% 的需求都用 https://schema.org/ 下的类即可。
例如标记一篇文章:
立即学习“前端免费学习笔记(深入)”;
生成可在 deepbi 沙箱 iframe 内运行或作为独立文件运行的交互式 HTML 页面,使用 `window.deepbi` JS SDK 实现数据查询、空间管理、文件浏览及用户操作。当用户提出以下需求时启用该能力: - 创建 KPI 仪表盘、数据表格、文件浏览器、成员列表、管理页面; - 明确要求“转成 dhtml”、“转译成 HTML”、“把 XX 页面转成……”、“控制台页面”、“管理后台”、“DeepBI 页面迁移”; - 提及位于 `apps/console/src/featur
<article itemscope itemtype="https://schema.org/Article"> <h1 itemprop="headline">如何调试 itemtype</h1> <time datetime="2024-06-15" itemprop="datePublished">2024-06-15</time> </article>
-
itemtype决定上下文:后续所有itemprop都按该类型定义的属性校验 - 拼错 URL(比如少个
s变成http://schema.org)会导致整个 item 被忽略 - 大小写敏感:
https://schema.org/article是无效的,必须首字母大写Article
嵌套 itemtype 时要逐层声明
一个页面里可以有多个独立结构化数据块,也可以嵌套。嵌套时,子元素必须显式带自己的 itemscope 和 itemtype。
比如文章作者是 Person 类型:
<article itemscope itemtype="https://schema.org/Article">
<h1 itemprop="headline">标题</h1>
<div itemprop="author" itemscope itemtype="https://schema.org/Person">
<span itemprop="name">张三</span>
</div>
</article>
- 父
<article></article>的itemprop="author"指向一个嵌套 item,不是纯文本 - 子
<div> 缺少 <code>itemscope或itemtype,name就不会被识别为 Person 的属性 - 不能靠“继承”:子元素不会自动获得父级的
itemtype - 工具报错
Missing field "mainEntityOfPage":不是itemtype错了,而是缺少必要属性,和itemtype声明本身无关 - 工具显示 “No structured data found”:优先检查
itemscope是否遗漏、itemtypeURL 是否可访问(试着在浏览器打开那个 URL 看是否 200) - Chrome DevTools 的 Elements 面板里,右键元素 → “Copy → Copy element”,粘贴后确认
itemscope和itemtype都完整存在(有时模板引擎会意外过滤掉布尔属性)
验证 itemtype 是否生效的最快方式
别依赖肉眼检查 HTML 源码,直接用 Google 的 Rich Results Test 或 Schema Markup Validator。
常见失效信号:
真正容易被忽略的是:itemtype 声明后,后续所有 itemprop 必须符合该类型在 schema.org 上定义的属性列表,否则会被静默忽略——不是报错,而是直接丢弃。


















