itemtype必须与itemscope配合使用才有效,单独使用无效;其值须为完整https url;comment类型必需author和datepublished属性,且需显式标注;每条评论须独立声明itemscope;text属性不可省略且须带itemprop。

itemtype 属性必须搭配 itemscope 使用才有效
单独写 itemtype 没有任何结构化数据效果,浏览器和搜索引擎完全忽略。它只是告诉解析器“这个元素包裹的内容属于某类 Schema 类型”,但必须用 itemscope 显式声明作用域边界。
常见错误是只加 itemtype="https://schema.org/Comment" 却漏掉 itemscope,结果 Google Rich Results Test 里根本检测不到 Comment 类型。
- 正确写法:
<div itemscope itemtype="https://schema.org/Comment"><li>错误写法:<code><div itemtype="https://schema.org/Comment">(无 <code>itemscope) -
itemtype值必须是完整 HTTPS URL,http://schema.org/Comment或简写schema:Comment都不被支持 -
author必须是Person或Organization类型(推荐嵌套itemscope itemtype="https://schema.org/Person") -
datePublished必须是 ISO 8601 格式字符串,如2024-05-20T14:30:00+08:00,不能是 “2024年5月20日” 这类自然语言 - 如果评论来自用户昵称而非真实姓名,仍需包裹在
Person下,并用name属性标注昵称
评论对象必须包含至少 author 和 datePublished
Schema.org 对 Comment 类型有最低属性要求:没有 author 和 datePublished,即使标记了 itemtype,结构化数据也视为无效。Google 的 Structured Data Testing Tool 会直接报错 “Missing field ‘author’”。
这两个字段不能只靠文字内容隐式推断,必须显式用 itemprop 标注:
避免把整个评论列表当作单个 Comment 实体
一个 <div itemscope itemtype="https://schema.org/Comment"> 只能描述一条评论。把所有评论都包进同一个 <code>itemscope 区域里,会导致解析器认为这是“一条含多段文本的评论”,而不是“多条评论”。
正确做法是每个评论块独立声明 itemscope 和 itemtype:
将调研报告、方案对比、数据分析、需求梳理、会议纪要、设计说明、代码评审、学习笔记等任务产物输出为可在浏览器直接打开的单文件 HTML,替代 Markdown 作为最终交付物。Markdown 在信息密度、视觉清晰度和可分享性上已跟不上 AI 产物的丰富度,HTML 能同时承载排版、表格、SVG 等。
<article itemscope itemtype="https://schema.org/BlogPosting"><h1 itemprop="headline">…</h1>
<!-- 每条评论独立 scope -->
<div itemscope itemtype="https://schema.org/Comment">
<p itemprop="text">这条是第一条评论</p>
<div itemprop="author" itemscope itemtype="https://schema.org/Person">
<span itemprop="name">张三</span>
</div>
<time itemprop="datePublished" datetime="2024-05-20T10:00">2024-05-20</time>
</div>
<div itemscope itemtype="https://schema.org/Comment">
<p itemprop="text">第二条</p>
<!-- … -->
</div>
</article>
text 属性不能省略,且必须是纯文本节点或带 itemprop 的内联元素
text 是 Comment 的必需属性,但很多人误以为包裹它的 <p></p> 或 <div> 标签本身就算提供 text 内容。实际上,只有当该元素明确带有 <code>itemprop="text",且其直接子节点为文本、或子元素也符合 Schema 文本规则时,才能被识别。
- ✅ 有效:
<p itemprop="text">这是一条评论</p> - ❌ 无效:
<p><span>这是一条评论</span></p>(<p></p>没有itemprop,<span></span>也没标) - ⚠️ 风险操作:在
itemprop="text"元素里嵌套<a></a>、<img>等非文本节点,可能导致部分字段被截断或忽略
复杂评论(含表情、引用、代码块)建议先做 HTML 转义再塞进 itemprop="text",避免解析器因标签干扰误判结构。










