文章页底部 上一篇 指向的是发布时间更晚的文章,下一篇 反而是更早的。最新一篇的 下一篇 指向三个月前的文章,顺序整个颠倒。碰到这种情况,我一般先确认改动有没有真的生效。

原因不复杂,取相邻文章时用了 get_previous_post 和 get_next_post 的参数写反,或者把排序改成 ASC。函数按 post_date 排列,方向一改语义就反了。

「上一篇下一篇反转」这个问题文档写得含糊,实际行为以当前版本为准,别照旧版本的结论套。报错里带路径的,先去看那个路径在不在、权限对不对。

previous_post_link('%link', '上一篇:%title', true, '', 'category');
next_post_link('%link', '下一篇:%title', true, '', 'category');

同一份配置存在多处的,先确认改的是被加载的那一份。新版本先放一台机器上跑一天再全量,问题一般在这段时间暴露。

备份不是备了就行,恢复一次才算数,很多备份文件打开才发现是空的。

具体做法是,先确认站点要按发布时间还是 menu_order 排序;用 previous_post_link 的 in_same_term 控制范围;改完从最早和最晚各挑一篇验证边界。

最后用这个标准收尾,最早一篇的上一篇为空,最新一篇的下一篇为空,中间文章方向正确。

作者 9823189