itemtype必须与itemscope配合使用,值为大小写敏感的绝对URL(如https://schema.org/Movie),支持空格分隔多个同源类型,且itemprop须严格匹配该类型定义的属性。

itemtype 必须和 itemscope 一起用
单独写 itemtype 没有效果,浏览器会直接忽略。它只在有 itemscope 的元素上生效,用来声明这个结构化数据属于哪个类型。比如你想标记一段内容是“电影”,就得先用 itemscope 开启一个数据项,再用 itemtype 指定它的类型 URL。
itemtype 值必须是合法的绝对 URL
不能写成 itemtype="Movie" 或 itemtype="schema.org/Movie" 这类相对路径或简写——这些都会让结构化数据失效。正确写法是完整协议 + 域名 + 路径,且大小写敏感:
-
itemtype="https://schema.org/Movie"✅(推荐 HTTPS) -
itemtype="http://schema.org/Product"✅(HTTP 也支持,但不推荐) -
itemtype="Movie"❌(被忽略) -
itemtype="schema.org/Event"❌(缺少协议,不是绝对 URL)
多个 itemtype 可以共存,但必须同属一个词汇体系
某些场景需要兼容多个语义定义(比如同时满足 schema.org 和某些行业规范),itemtype 允许空格分隔多个 URL,但所有 URL 必须来自同一词汇源,不能混用:
-
itemtype="https://schema.org/Restaurant https://schema.org/FoodEstablishment"✅(同属 schema.org) -
itemtype="https://schema.org/Person http://ogp.me/ns#profile"❌(跨词汇,搜索引擎通常只认第一个)
实际项目中,99% 的情况只需写一个 itemtype,优先选最精确的类型,比如用 https://schema.org/LocalBusiness 而不是宽泛的 https://schema.org/Thing。
常见错误:itemtype 写对了,但 itemprop 不匹配
itemtype 定义了类型,而 itemprop 必须是该类型在 schema.org 文档中明确定义的属性,否则结构化数据会被解析失败或降级。例如:
-
itemtype="https://schema.org/Movie"下可用itemprop="name"、itemprop="director"、itemprop="startDate" - 但
itemprop="author"就不合法——Movie 类型没定义这个属性,得换用https://schema.org/Book或加https://schema.org/CreativeWork才行
最容易被忽略的是:schema.org 页面上每个类型的属性列表是动态更新的,旧项目里抄来的 itemprop 名称可能已废弃,建议每次使用前查最新文档页。
前端入门到VUE实战笔记:立即使用
在学习笔记中,你将探索 前端 的入门与实战技巧!











