中文分类别名叫 news 英文也想用同一个词,保存时提示别名已被占用,改中文的别名英文链接又跟着变。乍看像缓存或者权限的锅,追下去往往不是。
wp term list category --fields=term_id,slug,name curl -sI https://example.com/en/category/news/ | head -1
追下去是这么回事:分类别名在整站范围内唯一,多语言插件没有把别名按语言隔离,同一个分类的翻译版本共用一条记录,改一处两处都跟着变。
碰到「多语言 slug 冲突」这类问题,我习惯先把当前配置原样备份一份,改坏了立刻换回来,不用现场推。测试环境和线上的差别,往往就在版本号和那几行被忽略的配置上。
线上出问题先对时间点,跟发布、备份、任务执行的时刻排一排,能省掉一半功夫。
具体做法是,给不同语言的分类别名都加上语言前缀或后缀;确认插件设置里开启了按语言独立别名的选项;改完逐条访问两种语言的分类页 确认互不串门。
验收就看一点,两种语言的分类地址各自独立 改动其中一个不影响另一个。
