侧栏热门文章按历史浏览量排序,前二十名半年没变过,新发布的文章只能靠 sitemap 被发现,平均收录时间拖到十天。

一开始怀疑是「榜单没有时间窗口,三年前的爆文一直占位」,查了一圈,方向不对。

这类报错背后常见的原因有几处,逐个排除就行。热门榜按全站累计浏览量排,新文天然没有曝光。另一种情况是侧栏在所有页面复用同一份榜单,链接集中到少数旧文。

不容易想到的是,正文里没有指向新文的上下文内链。

先看侧栏榜单的发布时间分布

curl -s https://www.example.com/ | grep -o '/archives/[0-9]*' | head -20

接着统计榜单文章的发布日期

SELECT ID, post_date FROM wp_posts WHERE post_status='publish' ORDER BY post_date DESC LIMIT 10;

再往下改成近 30 天浏览量与编辑推荐混排

add_filter('widget_posts_args', 'recent_hot_mix');

给新文补三条正文内链

SELECT ID FROM wp_posts WHERE post_date > '2026-10-01';

改完先别撤,确认这几项。侧栏里出现当月发布的文章,新文平均收录时间从十天缩到两天,旧文的流量没有明显下滑。

补一句。内链分配要看时效,全站共用一份历史榜单,等于把新内容的入口彻底堵死。线上能稳定复现的问题都不算难,难的是只在大流量下才出现的那种。

作者 9823189