结构化数据 · 类型图鉴 第 8 篇

视频 VideoObject:缩略图、关键时刻与视频富媒体结果

约 14 分钟阅读 更新于 2026-06-24 MagicSEO 编辑部 · 人工审核 类型图鉴

视频结构化数据决定了你的视频能否在 Google 搜索、视频标签页、Google 探索里以缩略图卡片出现,甚至在结果中直接标出「关键时刻」让用户跳到感兴趣的片段。核心很简单:给每个真实嵌在页面上的视频提供清晰的名称、缩略图和上传日期,再按需要补上可播放地址、时长和关键时刻。

VideoObject 是什么#

VideoObject 描述页面上的一个视频。Google 用它生成视频富媒体结果:缩略图、标题、时长、上传日期,以及可选的关键时刻和直播徽章。前提是页面上确实有这个视频,并且 Google 能抓到它的缩略图与播放地址。

官方文档入口:Google Search Central:Video (VideoObject) structured data

缩略图能抓到才算数thumbnailUrl 指向的图片和视频文件都不能被 robots.txt、登录墙挡住,否则视频富媒体结果生成不出来。

必填与推荐字段#

字段必填说明
name必填视频标题
thumbnailUrl必填可抓取的缩略图,建议多比例高分辨率
uploadDate必填ISO 8601 日期/日期时间,建议带时区
description推荐视频简介,与页面可见描述一致
contentUrl推荐原始视频文件地址
embedUrl推荐可嵌入播放器地址(至少 content/embed 二选一)
duration推荐ISO 8601 时长,如 PT1M30S
expires视情况视频过期时间,过期内容才需要

基础 JSON-LD 示例#

video.json
{
  "@context": "https://schema.org",
  "@type": "VideoObject",
  "name": "5 分钟搞懂结构化数据",
  "description": "用一个例子讲清 JSON-LD 如何帮助搜索引擎理解页面。",
  "thumbnailUrl": [
    "https://example.com/thumbs/sd-1x1.jpg",
    "https://example.com/thumbs/sd-4x3.jpg",
    "https://example.com/thumbs/sd-16x9.jpg"
  ],
  "uploadDate": "2026-06-24T08:00:00+08:00",
  "duration": "PT5M12S",
  "contentUrl": "https://example.com/videos/structured-data.mp4",
  "embedUrl": "https://example.com/embed/structured-data"
}

contentUrl 与 embedUrl#

字段指向注意
contentUrl原始视频文件(.mp4 等)Googlebot 要能直接访问
embedUrl可嵌入的播放器地址是 iframe 的 src,不是页面地址

至少提供其一,能同时提供更好。两者都要确保未被 robots.txt 屏蔽,否则 Google 无法确认视频真实存在。

关键时刻(Key Moments)#

关键时刻让搜索结果直接列出视频内的片段,用户点击可跳到对应时间点。两种实现方式,二选一

方式一:Clip——你自己定义每段。

video-clip.json
{
  "@context": "https://schema.org",
  "@type": "VideoObject",
  "name": "结构化数据全流程",
  "thumbnailUrl": "https://example.com/thumbs/full-16x9.jpg",
  "uploadDate": "2026-06-24T08:00:00+08:00",
  "duration": "PT12M",
  "contentUrl": "https://example.com/videos/full.mp4",
  "hasPart": [
    {
      "@type": "Clip",
      "name": "什么是 JSON-LD",
      "startOffset": 30,
      "endOffset": 180,
      "url": "https://example.com/watch?v=full&t=30"
    },
    {
      "@type": "Clip",
      "name": "如何验证",
      "startOffset": 181,
      "url": "https://example.com/watch?v=full&t=181"
    }
  ]
}

方式二:SeekToAction——告诉 Google 你的时间戳 URL 结构,由它自动识别关键时刻(常配合视频描述里的章节时间戳使用)。两种方式不要同时用在同一视频上。

直播徽章 BroadcastEvent#

正在直播的视频可以通过在 VideoObject 中嵌套 publicationBroadcastEvent)获得「LIVE」徽章,关键是 isLiveBroadcasttrue 并提供 startDateendDate。直播开始前、进行中、结束后要相应更新这些字段。此外还需调用 Indexing API 通知 Google 直播状态变化。

时间与日期格式#

  • duration 用 ISO 8601 时长PT1M30SPT2H5M
  • uploadDatestartDateendDate 用 ISO 8601 日期/日期时间,建议带时区,如 2026-06-24T08:00:00+08:00
  • 不要写中文日期或省略时区导致歧义。

本站为什么暂不实装 VideoObject#

本页是图文教程,没有嵌入真实视频。给一篇没有视频的页面标 VideoObject,会被判定为标记了不存在的内容。

本站示范等本站发布教程视频,并把视频真实嵌入页面时,再补上 VideoObject。结构化数据要对应页面上真实存在、可见、可播放的内容。

验证和监控#

  1. Rich Results Test 检查必填字段。
  2. 确认 thumbnailUrl、contentUrl/embedUrl 都未被 robots.txt 屏蔽。
  3. 核对 name、description、上传日期与页面可见内容一致。
  4. 用了关键时刻时,确认 Clip 的 url 能跳到对应时间点。
  5. 上线后在 Search Console 的视频增强报告里监控无效项;视频站点建议提供视频站点地图。

常见错误#

错误为什么危险修正
缩略图被 robots.txt 屏蔽无法生成视频卡片放开缩略图与视频文件抓取
缺 uploadDate必填字段缺失提供带时区的上传日期
embedUrl 写成页面地址不是播放器源填 iframe 的真实 src
Clip 与 SeekToAction 混用关键时刻冲突二选一
页面没视频却标 VideoObject标记不存在内容仅给真实嵌入的视频标记

VideoObject 上线清单#

  • name、thumbnailUrl、uploadDate 三项齐全
  • 提供 contentUrl 或 embedUrl 之一
  • thumbnailUrl 与视频文件未被 robots.txt 屏蔽
  • duration 用 ISO 8601 时长
  • uploadDate 用带时区的 ISO 8601 日期时间
  • 关键时刻 Clip 与 SeekToAction 只用其一
  • 直播用 BroadcastEvent 且 isLiveBroadcast=true
  • 页面真实嵌入该视频
  • Rich Results Test 无关键错误
  • 大量视频考虑提供视频站点地图

常见问题#

VideoObject 必填哪些字段?

Google 对 VideoObject 的必填字段是 name、thumbnailUrl 和 uploadDate。要让视频可播放和被更好理解,强烈建议补充 contentUrl 或 embedUrl 之一、duration、description。缺少缩略图或上传日期,视频富媒体结果通常无法生成。

contentUrl 和 embedUrl 有什么区别?

contentUrl 指向原始视频文件(如 .mp4),embedUrl 指向可嵌入的播放器地址(如 iframe 播放页)。Google 建议至少提供其中之一,能同时提供更好。要确保 Googlebot 能访问这些地址,不要被 robots.txt 或登录墙挡住。

关键时刻(key moments)怎么标记?

有两种方式:一是用 Clip 明确标出每个片段的 name、startOffset、url;二是用 SeekToAction 告诉 Google 你的 URL 时间戳结构,让它自动识别关键时刻。两者择一即可,不要重复。url 要带能跳转到对应时间点的参数。

时长 duration 怎么写?

duration 使用 ISO 8601 时长格式,例如 PT1M30S 表示 1 分 30 秒、PT2H5M 表示 2 小时 5 分。uploadDate、startDate 等日期则用 ISO 8601 日期或带时区的日期时间格式,不要写成中文或本地化字符串。