itemtype必须是完整HTTPS URL且严格匹配schema.org官方定义,如https://schema.org/Product;需返回HTTP 200响应,不可带尾斜杠或协议相对路径;同一元素仅允许一个合法类型,且itemprop须符合该类型的属性规范。

itemtype 必须是完整 HTTPS URL
它不是随便填个词或缩写就能用的。搜索引擎和结构化数据测试工具(比如 Google Rich Results Test)只认可可验证的、带协议的绝对地址。写成 Person、./Product 或 http://schema.org/Product 全部无效。
-
https://schema.org/Product✅ 正确,协议、域名、路径、大小写全部匹配官方定义 -
https://schema.org/product❌ 错误,schema.org 对类型名大小写敏感,product不是合法类型 -
https://schema.org/Product/❌ 错误,末尾斜杠会导致解析器拒绝该 URL(2026 年起明确不接受带尾斜杠的 itemtype) -
//schema.org/Product❌ 错误,协议相对路径无法被验证,HTTP 层无响应
itemtype URL 必须能返回 HTTP 200 响应
这个 URL 不需要返回 JSON-LD 或机器可读内容,但必须在浏览器或 curl 中能打开且状态码为 200。很多开发者本地调试时用自建词汇表,结果 URL 返回 404 或重定向到登录页,整个 itemscope 块就被忽略。
- 可用
curl -I https://schema.org/Product检查响应头 - 避免使用已停用的旧词汇表,如
http://data-vocabulary.org/(Google 自 2020 年起不再支持) - 第三方词汇表(如
https://www.php.cn/link/...)必须确保该链接长期稳定、不跳转、不拦截爬虫
同一个元素只能有一个 itemtype
itemtype 定义的是“这个容器描述的是哪一类事物”,不是属性列表。你不能在一个 div 上写两个 type,比如想同时表示“产品”和“评论”,这是语义冲突——得拆成两个独立的 itemscope 块,或者用嵌套方式让一个作为另一个的属性值(如 itemprop="review" 指向内部另一个 itemscope)。
使用 PptxGenJS 和 Python 解析,将结构化的 HTML/CSS 幻灯片内容转换为原生、可编辑的 PowerPoint(.pptx)演示文稿。
- ✅ 正确:
<div itemscope itemtype="https://schema.org/Product">...</div> - ❌ 错误:
<div itemscope itemtype="https://schema.org/Product https://schema.org/Review">(空格分隔多个 URL 是非法语法) - ❌ 错误:
<div itemscope itemtype="Product Review">(字符串拼接无意义)
itemtype 和 itemprop 必须语义匹配
填对了 URL 只是第一步。如果 itemtype="https://schema.org/Person",却在里面写 itemprop="price",Google 工具会直接报错:“Property price is not a valid property of Person”。每个 schema.org 类型页面底部都有 “Properties” 表格,列出了它允许的所有 itemprop 名称及对应的数据类型。
立即学习“前端免费学习笔记(深入)”;
- 查法:打开
https://schema.org/Person→ 滚动到底部 → 看 “Properties” 表格里的telephone、jobTitle等字段 - 注意 “Expected Type” 列:比如
image的期望类型是ImageObject或URL,就不能塞纯文本“公司 logo” - 嵌套时,子
itemscope的itemtype也得符合父级itemprop所要求的类型(例如author属性期望Person,就不能填Organization)


















