这类问题我又碰上了一次。商品页的 offers 里 priceCurrency 填了 RMB,GSC 提示货币代码无效。价格富媒体不显示,Google 购物那边的抓取也不认这个页。

第一反应是「availability 用了中文「有货」,枚举值不匹配」,验证下来不成立。

排查方向其实有限,先把可能性排一排。货币必须用 ISO 4217 三字母代码,RMB 不是合法值;price 带了千分位逗号,被解析成字符串;多个 offers 缺 priceValidUntil,被判信息不完整。

第一件事是确认当前 offers 的字段值

curl -s https://www.example.com/p/1024 | grep -o '"offers".\{0,160\}'

再往下改成本位币代码与纯数字价格

"priceCurrency": "CNY", "price": "199.00"

接着把库存状态换成标准枚举

"availability": "https://schema.org/InStock"

补价格有效期并复验

python validate_schema.py https://www.example.com/p/1024 --type Product

同样的操作我在测试机上先走了一遍,线上只做验证过的部分。

改完先别撤,确认这几项。货币与库存字段校验通过,富媒体报告里的错误项归零,商品页开始在结果里显示价格区间。

提醒一点。凡是枚举类字段都别用中文,把 schema.org 的取值直接写进模板,比事后逐页修要省事得多。拖得越久,排查成本越高,因为现场状态会被后续操作覆盖。

作者 9823189