必须使用 https://schema.org/event 作为主类型,嵌套 location、organizer 等属性;必填 name 和 startdate(iso 8601 格式带时区),location 需为对象,json-ld 要合法且置于 head 中。

Event结构化数据该用哪种Schema类型
必须用 https://schema.org/Event,不是 Organization 或 Place —— 即使活动在某个场馆举办,主类型也得是 Event。嵌套用 location、organizer 等属性关联其他实体,不能把整个活动塞进 Place 里。Google Structured Data Testing Tool 会直接报错类型不匹配。
必填字段和容易漏掉的日期格式
name、startDate 是 Google 搜索结果富媒体卡片的硬性要求;endDate 虽非强制,但单日活动也建议显式写出,避免被误判为“开始即结束”。日期必须用 ISO 8601 格式:"2024-09-15T14:00:00+08:00",不能写成 "2024/09/15 14:00" 或省略时区偏移——后者会导致 Rich Results 测试失败,且部分爬虫会默认按 UTC 解析。
-
startDate和endDate都要带完整时间戳,哪怕只是全天活动,也应写成"2024-09-15T00:00:00+08:00" -
location必须是对象,不能是字符串;若为线下活动,至少提供name和address(后者需是对象,含streetAddress、addressLocality等) -
url推荐填写,指向该活动的独立详情页,而非首页或跳转链接
JSON-LD 嵌入位置和常见校验失败原因
放在 内任意位置即可,但必须确保是完整、合法的 JSON-LD 块,且未被 HTML 注释包裹或混入 JS 变量声明中。常见失效场景:
- 用了单引号代替双引号(JSON 只认双引号)
-
@context写成"http://schema.org"(缺了s,正确是"https://schema.org") -
image字段值是相对路径(如"./poster.jpg"),而 Google 要求绝对 URL - 多个
script[type="application/ld+json"]块之间没加换行或分隔,导致解析器连读成非法 JSON
线下+线上混合活动怎么标
用 eventAttendanceMode 明确声明:"https://schema.org/OfflineEventAttendanceMode"、"https://schema.org/OnlineEventAttendanceMode" 或两者都列(数组)。同时,location 和 video/offers 可并存——比如线下场馆信息放 location,Zoom 链接放 video 的 embedUrl。别试图用一个 url 同时指向场地地图和会议链接,那会让结构化数据语义模糊,富媒体展示可能降级。
实际中,video 字段容易被忽略:如果线上入口是会议链接,应包装为 {"@type": "VideoObject", "embedUrl": "https://zoom.us/j/..."},而不是直接把链接塞进 url。
前端入门到VUE实战笔记:立即使用
在学习笔记中,你将探索 前端 的入门与实战技巧!











