迁移时顺手把固定链接从日期结构改成文章名 页面都能打开 旧地址进来全是 404 搜索流量断了一截。第一次遇到会往复杂处想,其实漏掉的多是个小前提。

wp option get permalink_structure
wp rewrite list --match=/2024/05/
wp rewrite flush --hard

固定链接只改了 permalink_structure 这一个选项 旧地址没有对应的重写规则 WordPress 匹配不到就直接返回 404 历史收录的链接一条都没接住 全部断掉。这一点先确认清楚,后面就不用反复试。

「固定链接结构变化」相关的验证我通常做两遍,改完一次、隔天再看一次,确认不是临时生效。把复现步骤压到三条以内,交给同事也能跑出来,才算真的定位清楚。

改动写完就同步给同事,下一个人踩同一个坑,成本还是你的。

具体做法是,先确认旧站的结构是什么 把 permalink_structure 的原值导出来单独存一份备份;按旧规则加一条 rewrite 把旧地址 301 到新地址 别一次性全放上去;规则加完要刷新一次 别只保存固定链接页面就以为已经生效。

改完照着核一遍,随便挑十条旧文章地址访问 都只跳一次并落到对应新地址。

作者 9823189