应使用 https://schema.org/person;必需属性为 name,其他推荐属性包括 telephone、email、jobtitle、affiliation、url;地址须用 itemtype="https://schema.org/postaladdress" 嵌套并拆分子属性;多个联系人需各自独立 itemscope,无需 contactpoint。

itemtype 应该用 schema.org/Person 还是 vcard?
直接用 https://schema.org/Person,别碰 vCard(如 http://data-vocabulary.org/Person)。前者是当前主流且被 Google、Bing 等结构化数据解析器实际支持的;后者早在 2016 年就被 Google 宣布弃用,现在用它基本不会触发富摘要或通讯录识别。
联系人信息必须包含哪些 mandatory 属性才能被识别为 Person?
仅写 itemtype="https://schema.org/Person" 不够,必须至少提供 name(用 itemprop="name" 标记),否则多数解析器会忽略整个 item。其他推荐但非强制的属性包括:
-
telephone(带国际区号更稳妥,如+86 138 0013 8000) -
email(需是有效邮箱格式,如mailto:contact@example.com或纯文本contact@example.com) -
jobTitle或affiliation(有助于区分个人与组织) -
url(指向个人主页,增强可信度)
嵌套地址(address)怎么写才不被解析器丢掉?
如果要标记详细地址,不能把 address 当作字符串直接写在 itemprop 里。必须用 itemtype="https://schema.org/PostalAddress" 单独包裹,并在其内部用子属性拆分:
将调研报告、方案对比、数据分析、需求梳理、会议纪要、设计说明、代码评审、学习笔记等任务产物输出为可在浏览器直接打开的单文件 HTML,替代 Markdown 作为最终交付物。Markdown 在信息密度、视觉清晰度和可分享性上已跟不上 AI 产物的丰富度,HTML 能同时承载排版、表格、SVG 等。
<div itemscope itemtype="https://schema.org/Person">
<span itemprop="name">张三</span>
<div itemprop="address" itemscope itemtype="https://schema.org/PostalAddress">
<span itemprop="streetAddress">北京市朝阳区建国路8号</span>
<span itemprop="addressLocality">朝阳区</span>
<span itemprop="addressRegion">北京市</span>
<span itemprop="postalCode">100022</span>
</div>
</div>
漏掉 itemscope itemtype="https://schema.org/PostalAddress" 这层,streetAddress 等子属性会被当成普通文本忽略。
多个联系人放一起时,itemprop="contactPoint" 是必须的吗?
不是必须,而且一般不用。直接对每个联系人用独立的 itemscope itemtype="https://schema.org/Person" 更清晰可靠。contactPoint 属于 Organization 的子属性,用于标记“该组织对外的联络方式”,比如客服电话、邮箱——它本身不描述人,只描述联络渠道。拿它套在个人身上,反而可能让解析器混淆语义。
真正容易被忽略的是:不同联系人之间要用独立的 itemscope 区域隔开,不能共用一个外层容器又混用 itemprop,否则属性归属会错乱。
前端入门到VUE实战笔记:立即使用
在学习笔记中,你将探索 前端 的入门与实战技巧!










