🎀 🌸

薄内容与标签页治理:canonical、noindex、分页三件套

薄内容与标签页治理:canonical、noindex、分页三件套

很多内容站的结构问题不是「缺页面」,而是页面太多、且大部分没有独立价值。

典型症状:96 篇文章,却有近 200 个标签页。其中近百个标签下只挂着 1–2 篇文章,页面内容就是「标题 + 摘要 + 标题 + 摘要」,和大分类页高度重复。这些页面全部进了 sitemap,占据抓取预算,稀释权重。

先判断:什么算「薄内容」

没有绝对的字符数标准,但有几个可操作的判断角度:

判断角度健康需要处理
正文可见字数≥ 800 字< 300 字
该页承载的文章数≥ 5 篇1–2 篇
与其他页面的差异度有独特介绍文字只有标题列表,与分类页雷同
是否有搜索需求有人会搜这个词是自动生成的长尾组合
是否有内链指向≥ 2 处只在标签云里出现

注意第三行是最关键的。一个标签页哪怕有 20 篇文章,如果页面上除了文章列表没有任何介绍性文字,它本质上和「搜索结果页」没有区别——这类页面搜索引擎通常不给独立索引。

治理策略:三类页面,三种处理

A 类:核心标签 → 保留并做厚

能代表站点主题、有稳定搜索量、下面挂着足够多文章的标签。比如「技术 SEO」「服务器运维」这种。

处理动作:

  • 在列表上方写 150–300 字的栏目介绍,说明这个标签涵盖什么、适合谁看;
  • 保证页面有指向该标签下重点文章的精选区块;
  • canonical 指向自己,保留在 sitemap 里;
  • 从首页或主导航给一个入口。

这一步做完,标签页就从「列表页」变成了「专题聚合页」,具备了独立索引的资格。

B 类:边缘标签 → noindex, follow

有一定数量文章(3–10 篇),但没有独立搜索需求,或者和别的标签高度重叠。

处理动作:在页面 <head> 输出

<meta name="robots" content="noindex, follow">

follow 不能省。它的含义是「不要把我这个页面放进索引,但我指向的文章你可以继续爬、继续传递权重」。如果写成 noindex, nofollow,标签页里的文章链接就失去了发现通道,反而伤害收录。

同时要把这些页面从 sitemap 里移除。

C 类:垃圾标签 → 合并或删除

只有 1–2 篇文章、名字是无意义的长尾组合、或者和另一个标签只是同义词。

处理动作:

  • 合并:把 A 标签下的文章批量改成 B 标签,然后删掉 A;
  • 删除:WordPress 后台删除标签时不勾选「同时删除文章」,只会解除关联;
  • 必须做 301:如果这个标签页已经被收录过,删除后应 301 到最有相关性的分类页或上级标签,不要直接 404。

WordPress 里的实现方式

批量给「文章数少于 N 的标签页」加 noindex,用 mu-plugin 十几行就能搞定:

add_action('wp_head', function () {
    if (!is_tag()) return;

    $term = get_queried_object();
    $min  = 3;  // 少于 3 篇文章的标签页不索引

    if ($term->count < $min) {
        echo '<meta name="robots" content="noindex, follow">' . "\n";
    }
}, 1);

同时把这些标签从 sitemap 里剔除。WordPress 原生 sitemap 可以用过滤器:

add_filter('wp_sitemaps_taxonomies_query_args', function ($args, $taxonomy) {
    if ($taxonomy === 'post_tag') {
        $args['count_min'] = 3;  // 只输出文章数 ≥3 的标签
    }
    return $args;
}, 10, 2);

为什么两个都要做:sitemap 是「推荐抓取清单」,noindex 是「不要索引声明」。如果只在 sitemap 里排除,页面仍可能通过标签云、内链被发现并索引;如果只加 noindex 而不清理 sitemap,等于把不想收录的页面主动推荐给搜索引擎,浪费预算。

顺手要一起处理的另外两类页面

日期归档页

/2026/09/ 这类页面纯粹是文章列表,内容和中性的分类页重复,且几乎没有独立搜索需求。建议整体 noindex, follow 并从 sitemap 移除。如果主题默认输出了日期归档,先确认导航里没有链接到它们。

带参数的 URL

站内搜索、排序、筛选参数会组合出成百上千个 URL:/tag/seo/?order=asc&paged=2。这类 URL 必须做 canonical 归一,直接指向不带参数的干净地址:

add_action('wp_head', function () {
    if (is_singular()) return;
    if (empty($_GET)) return;

    // 有查询参数的分页/归档页,一律 canonical 到去掉参数的版本
    $clean = strtok(home_url(add_query_arg([])), '?');
    echo '<link rel="canonical" href="' . esc_url($clean) . '">' . "\n";
}, 1);

分页要单独考虑:分页第 2、3 页的 canonical 应该指向自己,不要指向第 1 页。把第 2 页 canonical 到第 1 页,等于告诉搜索引擎「第 2 页是重复内容」,第 2 页上的文章就失去了被发现的机会。

页面类型canonical 指向索引策略进 sitemap
文章页自己index是
核心标签 / 分类页自己index是
内容少的标签页自己noindex, follow否
日期归档页自己noindex, follow否
分页第 N 页自己index, follow视情况
带参数 URL干净版本跟随 canonical否
站内搜索结果页—noindex, follow否

治理的验收标准

  1. sitemap 里的 URL 中,文章页占比 ≥ 70%;
  2. GSC 索引报告里「已排除,被 noindex 标记」的数量上升——这是好事,说明批量规则生效了;
  3. 「已抓取,尚未编入索引」的数量下降;
  4. 核心标签页开始获得展示次数(在「效果」报告里按页面维度能看到)。

整个治理过程建议分两步走:先加 noindex 和 sitemap 过滤(一天内可完成、可回滚),观察两周看收录结构变化,再决定要不要真的删除标签。

常见问题

noindex 会不会让文章也一起不被收录?

不会。noindex 只作用于声明它的那个 URL。文章页有自己的 URL 和独立的 robots 声明,不受标签页影响。前提是别写成 nofollow,保证链接仍可被追踪。

被 noindex 的页面,之前已收录的会怎样?

搜索引擎重新抓取该页面后,会把它从索引中移除,通常需要几周到一两个月。这期间页面仍可能出现在结果里,属正常现象。

是不是所有标签页都应该 noindex?

不是。合理的做法是分层:核心标签做成专题聚合页并保留索引,长尾标签批量 noindex。全部 noindex 会丢掉一部分本可以获得的长尾流量入口。

图片[1]-薄内容与标签页治理:canonical、noindex、分页三件套-极客资源
© 版权声明
THE END
喜欢就支持一下吧
点赞9 分享
评论 抢沙发

请登录后发表评论

    暂无评论内容