事情本身不复杂,线索都在日志里。多语言站英文页面正文是英文,meta description 却直接调用了中文摘要字段,搜索结果里英文标题下面挂着一行中文,点击率明显低于其他页面。

第一反应是「英文页语言声明写的是 en,内容却是中文,被判不符」,验证下来不成立。

原因不止一个,得分开看。摘要字段只有一个,模板按语言取错了变量。另一种情况是翻译流程只覆盖正文,SEO 字段没有进翻译队列。

少数情况下是缓存插件把中文页的 head 整段缓存后复用到英文页。

上来先确认英文页的摘要内容

curl -s https://www.example.com/en/post-1024/ | findstr /i "name=\"description\""

随后检查语言声明

curl -s https://www.example.com/en/post-1024/ | findstr /i "<html"

给英文页补独立摘要字段

SELECT meta_key, meta_value FROM wp_postmeta WHERE post_id=2048 AND meta_key LIKE '%description%';

等前面都确认过,再清缓存后复验

curl -s -X PURGE https://www.example.com/en/post-1024/

恢复的判定其实很直接。英文页补上独立摘要后,搜索结果里的描述变成英文,该目录的点击率一周内回升。

容易忽略的是,多语言站的 SEO 字段要和正文一起翻译,只翻正文的话,摘要和标题还是原语言。拖得越久,排查成本越高,因为现场状态会被后续操作覆盖。

作者 9823189