问题出现得很突然,日志倒是留得挺全。连锁门店页面的 LocalBusiness 标记里,latitude 写成 116.40、longitude 写成 39.90,正好把经纬度对调。知识面板上的地图定位跑到境外,三家门店的富媒体都没有展示。
刚开始盯着「address 里的省市与坐标不匹配,被判成冲突」,折腾了半个多小时,排掉了。
排查方向其实有限,先把可能性排一排。模板把 latitude 与 longitude 的变量顺序写反。还有一种是geo 坐标用了百度坐标系,和 WGS84 差了数百米。
另外,openingHours 与门店实际营业时间不一致。
取一条标记核对坐标
curl -s https://www.example.com/store/1 | grep -A6 '"geo"'
随后按纬度在前经度在后写入
"geo":{"@type":"GeoCoordinates","latitude":39.9042,"longitude":116.4074}
接着统一坐标来源
SELECT store_id, lat, lng FROM stores WHERE city='北京';
剩下的就是用富媒体工具复验单店
https://search.google.com/test/rich-results
怎么算真的好了,看的是同一批现象。地图定位回到门店所在城市,抽查三家店的坐标与后台一致,富媒体开始出现。
经纬度对调不会报语法错,只会把位置指到地球另一端,批量生成时尤其要抽查。报错文案容易误导,真正的原因往往在相邻那一层的日志里。
