装完新插件后前台右上角出现两个语言切换器,切换其中一个另一个不跟着变,文章列表还会重复出现两条。碰到这种情况,我一般先确认改动有没有真的生效。

原因不复杂,两套多语言插件各自注册语言分类和切换器,同一个请求被解析两次,内容过滤条件叠加,重复和错乱都从这里来,这类冲突只能留一套。

「多语言插件冲突」这类改动最怕改一半,回滚脚本先准备好,再动生产。改完顺手把文档补一句,省得下次自己重新推一遍。

wp plugin list --status=active | grep -i -E 'wpml|polylang'
wp plugin deactivate sitepress-multilingual-cms
wp cache flush

监控和日志的时间要对上,时区不一致会多绕很大一圈。临时改动用注释写上日期和原因,过两周自己都记不清为什么这么写。

具体做法是,先停用其中一套 同时导出已有的翻译对应关系;清理掉停用插件留下的分类数据和语言关联数据;只保留一套以后重新核对每篇文章的语言归属。

最后用这个标准收尾,前台只剩一个语言切换器 文章列表里也不会再出现重复条目。

作者 9823189