批量导入 200 篇文章后,后台分类计数还是 40,前台侧栏分类列表的数字也一样,重启 PHP 也不变。日志里能对上时间点,这种反而好排。
分类计数存在关系表里,导入绕过了系统的计数更新,对象缓存里还留着旧值。删除文章不会自动重算父级分类的计数。这一点先确认清楚,后面就不用反复试。
wp term recount category wp cache flush
「分类计数缓存」确认了原因之后,改动尽量只碰那一处,顺手改的东西后面最容易出问题。先做最小复现,能稳定跑出来的问题,排查成本会低一个数量级。
别只看报错的最后一行,往上看几行,真正的起因通常在上面。同类问题如果隔一段时间又出现,多半是某个定时任务或重启流程把改动冲掉了。
处理上按这个顺序:先清对象缓存 再看数字有没有变;没有变化就重算分类计数;导入脚本结尾补一次计数更新 别等人工点。
结果对不对很好判断,后台分类计数与实际文章数一致,侧栏数字同步更新。
