记录一下那天晚上的排查过程。主题在文末输出「热门文章」20 条,每篇都一样,两千篇文章底部指向同一批 20 个地址,这些页面排名很高,新文几乎拿不到内链。

刚开始盯着「热门文章按浏览量取数,新文永远进不了推荐池」,折腾了半个多小时,排掉了。

这类报错背后常见的原因有几处,逐个排除就行。同一批链接在两千个页面重复,形成模板化链接块。也可能是20 条链接把正文链接的权重按比例摊薄。

少数情况下是推荐块与正文主题无关,被当作样板内容处理。

先统计文末推荐块的链接数

curl -s https://www.example.com/post/ | grep -o 'class="hot-list"' | wc -l

然后把条数降到 6 条

add_filter('hot_posts_args', function($a){ $a['posts_per_page']=6; return $a; });

给推荐块加新文位

SELECT ID,post_title FROM wp_posts WHERE post_status='publish' AND post_date > DATE_SUB(NOW(), INTERVAL 7 DAY) LIMIT 6;

复查单页正文链接总数

curl -s https://www.example.com/post/ | grep -o '<a href="https://www.example.com/[^"]*"' | wc -l

怎么算真的好了,看的是同一批现象。单页正文链接数从 30 条降到 15 条以内,新文章在发布当天就能从同栏目页面拿到内链。

推荐位的价值不在多,而在能不能把新内容接进已有的链接网络。同一份配置在测试环境跑通,不代表线上没事,两边的默认值经常不一样。

作者 9823189