整站英文都正常,只有结算页那个继续按钮一直显示中文,在 Loco 里搜这条原文也搜不到,像是凭空冒出来的。乍看像缓存或者权限的锅,追下去往往不是。
grep -rn '继续' wp-content/themes/mytheme wp i18n make-pot . languages/mytheme.pot msgfmt languages/zh_CN.po -o languages/zh_CN.mo
追下去是这么回事:这段文案是硬编码在模板里的中文,或者调用时挂在了另一个文本域名下,扫描源码时没被提取进翻译文件,翻译表里没有这一条,自然不会出现译文。
碰到「翻译字符串缺失」这类问题,我习惯先把当前配置原样备份一份,改坏了立刻换回来,不用现场推。验证用真实数据走一遍,测试数据太干净,边界情况根本碰不到。
能分两步做的操作就别合成一步,中间看一眼返回值,出问题好判断。
具体做法是,先在模板里全局搜索这段中文 确认是写死还是调用;检查调用时用的文本域名和加载的语言包是否一致;重新扫描源码生成模板文件 再补齐译文并编译。
验收就看一点,按钮跟随语言显示对应文案 翻译文件里也能搜到这条原文。
