记录一下那天晚上的排查过程。主题的标签云按使用次数取了前 300 个,全站每个页面都输出这坨链接,日志里侧栏标签页的抓取量比正文还高,新文章两天才被抓一次。

刚开始盯着「标签页之间互相链接,形成一个小型链接环」,折腾了半个多小时,排掉了。

把日志和配置对完,能解释这个现象的基本就这几处。标签云没有数量上限,每页都重复输出同一批链接。另一种情况是标签页本身只有标题列表,没有正文,属于低质聚合页。

不容易想到的是,分页和排序参数让标签页又裂变出更多地址。

数一下单页的站内链接总数

curl -s https://www.example.com/ | grep -o 'href="https://www.example.com' | wc -l

随后统计标签页被抓取的占比

awk '{print $7}' access.log | grep '^/tag/' | wc -l

接着把标签云限制到 30 个并去掉重复输出

add_filter('widget_tag_cloud_args', function($a){ $a['number']=30; return $a; });

给低质标签页加 noindex

add_filter('wp_robots', 'noindex_thin_tags');

怎么算真的好了,看的是同一批现象。单页站内链接从四百多降到一百出头,标签页抓取占比从三成降到一成,新文章当天就能被抓到。

标签云本质是聚合入口,数量和位置都要控,铺满全站只会把抓取预算从正文上挤走。同一份配置在测试环境跑通,不代表线上没事,两边的默认值经常不一样。

作者 9823189