视频结构化数据里的 uploadDate 按后台习惯写成了 2026/10/01,富媒体测试提示日期格式不符,同一批 800 个视频页全部没拿到展示。
把日志和配置对完,能解释这个现象的基本就这几处。日期字段要求 ISO 8601,斜杠分隔不被接受。还有一种是模板直接输出数据库里的日期字符串,没有做格式转换。
另外,批量导入的历史数据混着多种日期写法。
定位输出字段的格式
curl -s https://www.example.com/video/1024 | grep -o 'uploadDate[^,]*'
接着统一转成 ISO 8601
date('c', strtotime($row['upload_date']));
批量修正历史数据
UPDATE videos SET upload_date = REPLACE(upload_date, '/', '-') WHERE upload_date LIKE '%/%';
复检抽样的三个页面
curl -s https://www.example.com/video/1024 | grep -o '20[0-9][0-9]-[0-9][0-9]-[0-9][0-9]' | head -3
命令输出我都留了记录,免得改完记不清原来的值。
改之前先确认了最近有没有人动过配置,避免白查一遍。
改完先别撤,确认这几项。修正后富媒体检测全部通过,三周内视频结果恢复展示,带封面的点击率比纯链接高出一截。
容易忽略的是,日期字段是硬性校验,斜杠、中文年月日、带时分秒混写都会被判错,输出前统一转一遍最省事。监控比日志更早给出信号,事后回看经常能提前半小时发现异常。
