站点语言切成英文,后台和插件界面都变了,主题里的按钮文案和页脚说明还是中文,清缓存也不动。第一次遇到会往复杂处想,其实漏掉的多是个小前提。

load_theme_textdomain('mytheme', __DIR__ . '/languages');
ls themes/mytheme/languages
ls wp-content/languages/themes

主题的语言包文件没有按约定的域名命名,或者还留在旧目录里,加载函数指向的路径和实际存放位置对不上,翻译组件找不到就直接回退到原文。这一点先确认清楚,后面就不用反复试。

「主题语言包不加载」这类改动最怕改一半,回滚脚本先准备好,再动生产。临时改动用注释写上日期和原因,过两周自己都记不清为什么这么写。

动手前把原文件复制一份带时间戳,出问题立刻换回去,比现场分析快得多。

具体做法是,先确认样式表头部声明的文本域名和调用处一致;检查语言目录下的文件名是否符合地区代码格式;把语言包挪到公共语言目录之后再重新加载页面。

改完照着核一遍,前台主题文案跟随语言切换 按钮和页脚都显示对应的译文。

作者 9823189