问题出现得很突然,日志倒是留得挺全。页面里的 canonical 指向 A 地址,og:url 却写着 B 地址,分享到社交平台后落地页和索引里的不一致。

原因不止一个,得分开看。两套标签由不同插件生成,来源不同。另一种情况是og:url 用了短链或带参数的地址。

另外,社交分享统计需要参数,canonical 需要干净地址。

动手时先对比两个标签的实际值

curl -s https://www.example.com/a/ | grep -iE 'canonical|og:url'

然后把 og:url 改成与 canonical 一致

add_filter('wpseo_opengraph_url', 'sync_og_url');

剩下的就是确认分享落地页可正常访问

curl -sI https://www.example.com/a/ | head -1

报错是间歇性的,我蹲守了半小时才抓到一次完整现场。

白天有业务在跑,能验证的部分都压到了晚上做。

怎么算真的好了,看的是同一批现象。两个标签指向同一个地址,社交分享和搜索收录落地页一致,外部链接也不再分散到两条地址。

补一句。og:url 不直接影响排名,但会影响分享回流和落地页判断,长期不一致会让外部链接分散到多条地址,权重起不来。改动前把原配置备份一份,出问题能马上回滚,这比任何技巧都实用。

作者 9823189