新闻页面结构化标记核心是用itemscope+itemtype="https://schema.org/newsarticle"包裹,必须包含headline、datepublished(用)、image(用)、articlebody(纯文本块)和author(嵌套person类型),缺一不可,否则富媒体摘要不触发。

新闻页面用 itemprop 做结构化标记,核心是让搜索引擎准确提取「标题、发布时间、作者、正文、图片」这五个关键字段——漏掉任一字段,富媒体摘要(如 Google 新闻卡片)就大概率不触发。
必须先套好 itemscope 和 itemtype 外层容器
单独写 itemprop="headline" 没用。新闻条目必须包裹在带 itemscope itemtype="https://schema.org/NewsArticle" 的元素里,且这个容器得是 <main></main> 的直接子元素(不能嵌套在 <div class="item"> 里)。
<ul>
<li>✅ 正确:<code><main><article itemscope itemtype="https://schema.org/NewsArticle">...</article></main>
<main><div class="news-list"><article itemscope itemtype="https://schema.org/NewsArticle">...</article></div></main> —— 屏幕阅读器和 Google 会丢失主内容上下文itemtype 必须是完整 HTTPS URL,https://schema.org/NewsArticle 不能写成 NewsArticle 或 http:// 协议
itemprop="headline" 和 itemprop="datePublished" 怎么写才不被丢
这两个字段最容易因 HTML 结构或格式问题被解析器跳过。
-
headline必须绑定在纯文本容器上,不能含子标签:<h2 itemprop="headline">国产大飞机C919完成首次商业飞行</h2>✅;<h2 itemprop="headline">C919<sup>®</sup> </h2>❌(会提取出 "C919®",Google 可能拒收) -
datePublished必须用<time></time>标签并带datetime属性:<time itemprop="datePublished" datetime="2026-01-04T08:30:00+08:00">2026年1月4日</time>✅;只写<span itemprop="datePublished">2026年1月4日</span>❌(机器无法识别时间语义) - 日期字符串必须是 ISO 8601 格式,
datetime属性值不能写“昨天”“刚刚”“发布于”等自然语言
itemprop="image" 和 itemprop="articleBody" 的常见陷阱
图片和正文是新闻类富摘要的硬性依赖字段,但写法稍有偏差就会失效。
-
image必须是可公开访问的图片 URL 字符串,不能靠<img src>自动提取:<link itemprop="image" href="https://example.com/c919.jpg">✅;<img itemprop="image" src="c919.jpg">❌(无content或href,不被识别) -
articleBody只能作用于纯文本块,不能跨多个<p></p>:<div itemprop="articleBody"> <p>第一段...</p> <p>第二段...</p> </div>❌(提取结果含 HTML 标签,Google 拒收);正确做法是把所有正文段落合并进一个<div itemprop="articleBody">,或用 <code><meta itemprop="articleBody" content="...">预处理后注入 - 正文文本中避免不可见字符(如 U+200E 零宽空格)、多余换行符、HTML 实体乱码,否则结构化数据验证工具会报“值异常”
- 作者必须用
Person类型嵌套:<div itemprop="author" itemscope itemtype="https://schema.org/Person"><span itemprop="name">张三</span></div>✅;直接写<span itemprop="author">张三</span>❌(类型缺失,会被忽略) - 来源(publisher)推荐用
Organization:<div itemprop="publisher" itemscope itemtype="https://schema.org/Organization"><div itemprop="name">新华社</div></div> - 分类(articleSection)用字符串即可:
<meta itemprop="articleSection" content="国内">,但必须放在同一itemscope内,且不能重复写多个content值(多分类需用逗号分隔的单个字符串) - 所有嵌套对象(如 author、publisher)必须紧贴
itemprop所在元素,不能隔一层<div>,否则 Google 直接丢弃整个嵌套块 <p>真正难的不是写对单个 <code>itemprop,而是确保整套微数据从外层itemscope到最内层<time></time>都没断层、没拼写错误、没协议错误——任何一环松动,整条新闻在结构化数据测试工具里都会显示为“0 个属性”。
作者、来源、分类这些辅助字段怎么标才有效
它们不是必需字段,但补全后能提升新闻实体可信度,尤其对 Google News 流量池有帮助。











