应选择与页面主体强匹配的Schema.org类型,如企业介绍页用Organization而非Product;itemprop需绑定可见内容或标准格式的meta/time标签,嵌套结构须紧贴属性容器。

直接用 itemscope + itemtype + itemprop 三件套,配合 Schema.org 类型 URL,就能让搜索引擎明确识别内容语义。不加或乱加,只会被忽略甚至误判。
怎么选对 itemtype?别硬套 Product 或 Organization
Schema.org 类型必须和页面主体强匹配。比如一个“企业介绍页”里混着产品列表,主容器该用 Organization,而不是把整个页面塞进 Product;否则 Google Rich Results Test 会报“itemtype 不匹配主体内容”。
- 先问自己:用户打开这个页面,最想了解的是什么?是公司、人、活动,还是某件商品?
- 查官方类型定义,比如
https://schema.org/LocalBusiness明确要求包含address、telephone,缺关键属性可能无法触发富摘要 - 避免用已废弃的旧地址(如
http://data-vocabulary.org/Person),只认https://schema.org/开头的 URL
itemprop 值写在哪?文本内容、<meta>、还是 <time>?
取决于值是否在页面上可见、是否需要机器可读但用户不可见。搜索引擎优先抓取可见文本,但日期、ID、评分等结构化强字段必须用标准格式显式声明。
- 用户能看见的标题、价格、描述,直接写在对应 HTML 元素里:
<h1 itemprop="name">iPhone 15</h1> - 日期时间必须用
<time datetime="2026-04-29">,不能只写“今天”或“4月29日”,否则解析失败 - 隐藏字段(如产品 SKU、内部 ID)用
<meta itemprop="sku" content="A2890">,放在<head>或同级itemscope容器内 -
itemprop不能跨元素重复使用同一名称来拼接内容,比如不能靠两个<span itemprop="description">拼成一段完整描述——它只取第一个匹配元素的文本
嵌套结构怎么写?itemscope 必须紧贴 itemprop
当某个属性本身是个对象(比如 author 是 Person,address 是 PostalAddress),嵌套的 itemscope 必须作为该属性的直接容器,不能隔层。
- ✅ 正确:
<div itemprop="author" itemscope itemtype="https://schema.org/Person"><span itemprop="name">张三</span></div> - ❌ 错误:
<div itemprop="author"><div itemscope itemtype="..."></div></div>—— 这样itemprop="author"没绑定到任何itemscope,Google 会丢弃整个嵌套块 - 地址类嵌套常见漏掉
postalCode或addressCountry,导致 LocalBusiness 标记不完整,地图展示失败
最容易被忽略的是嵌套层级的闭合顺序和 itemref 的实际效用——它极少被主流搜索引擎支持,别依赖它跨区域拼数据;所有关键属性尽量收进同一个 itemscope 树里,验证时用 Google Rich Results Test 看“Detected items”是否和预期完全一致。

















