没有不值得去解决的问题,也没有不值得去学习的技术!

博客 SEO 诊断记录:薄内容标签页 noindex 方案实战与多语言测试验证

/tag/bsc/ 网页源代码中成功出现 noindex 标签

作者:

博客搜索引擎优化日志

收到 Google Search Console 的邮件:新原因导致网站 http://www.shuijingwanwq.com/ 上的网页无法被编入索引。如图1

(1) Google网页无法编入索引?我这样解决了

验证通过后,在左侧菜单找到「站点地图」,输入 `/wp-sitemap.xml`,点击提交即可(如图1)

(2) 五大搜索引擎站点地图提交全记录:从Google到搜狗,我的实操经验分享

sitemap采用邀请制,当您的网站存在原创或不可替代内容或不能被搜狗spider正确抓取时,才会开通sitemap权限。

(3) 搜狗Sitemap权限申请记录:从审核通过到提交申请的全流程

所有主体、验证、备案配置全部完成后,进入核心的收录配置环节:【资源提交 - 普通收录 - 资源提交 - sitemap】,发现页面额度显示异常(如图3)

(4) 百度搜索资源平台新站完整收录实操记录(个人主体/自适应站/新站考察期问题解决)

美国流量占 20%,日本 10%,香港 16%,台湾 9%

(5) 技术博客英文站索引与低价值标签处理

中文站点地图:`https://www.你的域名.com/wp-sitemap-posts-post-1.xml` → 显示“致命错误”如图2

(6) 修复 WordPress 致命错误:从站点地图报错到恢复正常

Bing 明确指出了 4.2K 个页面存在“内容质量”问题

(7) 博客 SEO 诊断记录:近 15000 页面未被索引的成因与优化清单

点击表头的“总数”进行排序,数量为 0 的标签会集中在前几页。

(8) 彻底清理 WordPress 空标签:消除软 404,拯救抓取预算

/tag/bsc/ 网页源代码中成功出现 noindex 标签

(9) 博客 SEO 诊断记录:薄内容标签页 noindex 方案实战与多语言测试验证

“0秒访问”主要来自标签页

(10) WordPress Tag SEO优化实战:用WPCode实现“低内容标签页 noindex”完整踩坑与修复记录

图1:Bing整体流量趋势(下降起点)

(11) WordPress主题切换导致Bing流量下降实录(进行中):一次站点结构变更的SEO复盘

【图5:旧文章打开时出现 WordPress 致命错误】

(12) 重新安装 Yoast SEO 后旧文章打不开:一次 WPCode Snippet 重复声明函数导致的 WordPress 致命错误排查记录

[图2:文章类型中元描述设置为“摘录”]

(13) 重新启用 Yoast SEO 后,我如何用全局设置低维护优化 WordPress 博客 SEO

【图 1,英文站 Yoast sitemap_index.xml 页面】

(14) WordPress 英文站迁移到独立子域后:完整调整 Yoast Sitemap、薄内容标签与搜索引擎提交

在之前的 SEO 诊断中,我发现博客有近 15000 个页面未被索引,其中包含了约 6000 个薄内容标签页。为了避免这些只有零星文章的标签页拖累整站质量评分,我制定了“质量控流”策略:暂不删除标签,但在代码层面自动为文章数 < 2 的标签页添加 <meta name="googlebot" content="noindex, follow">

这样既保留了网站的原有结构内链,又明确告知搜索引擎暂不索引这些低质页面。以下是基于 WordPress + Polylang 多语言环境的实战落地与测试全过程。

一、 代码实现:Hook 拦截与动态注入

在主题的 functions.php 文件中,我添加了以下代码片段,通过 WordPress 的 wp_head 钩子动态注入 noindex 标签:

在 WordPress 后台主题文件编辑器中添加 functions.php 代码

(如上图所示,在第 57 行之后插入了 noindex 动态注入逻辑)

PHP
	// 为文章数小于2的薄内容标签页添加 noindex 标签
	add_action( 'wp_head', 'add_noindex_to_thin_tag_pages' );
	function add_noindex_to_thin_tag_pages() {
	    // 仅在标签归档页面执行
	    if ( is_tag() ) {
	        // 获取当前标签对象
	        $tag = get_queried_object();
	        // 判断是否存在且文章计数小于2
	        if ( $tag && isset( $tag->count ) && $tag->count < 2 ) {
	            // 针对您需求中的 Googlebot
	            echo '<meta name="googlebot" content="noindex, follow">' . "\n";
	            // 建议同时添加通用 robots 标签,以便 Bing、百度等其他搜索引擎也遵循此规则
	            echo '<meta name="robots" content="noindex, follow">' . "\n";
	        }
	    }
	}

核心逻辑很简单:使用 is_tag() 判断当前页面,通过 get_queried_object() 获取当前标签对象及其 count 属性,如果计数小于 2,则输出 noindex 标签。

二、 深度解析:Polylang 多语言标签的底层机制

很多同学可能会有疑问:在多语言环境下,$tag->count 到底统计的是全站的总文章数,还是当前语言的文章数?这要从 Polylang 的底层实现机制说起。

Polylang 处理多语言标签时,并不是在一个标签(Term)上叠加多语言字段,而是为每种语言创建独立的 Term

举个例子:在中文语言下有一个标签 “bsc”,当我在英文语言下再添加一个标签 “bsc” 时,数据库里实际上生成了两个拥有不同 ID 的独立 Term。Polylang 只是通过其内部的数据表,自动维护了这两个不同 ID 的 Term 之间的“互为翻译”关联关系。

正因如此,WordPress 原生的文章计数逻辑天然就是按语言隔离的。 中文 “bsc”(Term ID: A)的 $tag->count 只计算归属中文站点的文章,英文 “bsc”(Term ID: B)的 $tag->count 也只计算归属英文站点的文章,两者互不干扰。这也是为什么我们上述简短的代码无需做特殊的语言判断,就能精准按语言维度进行控流的核心原因。

三、 缓存清理:确保代码生效

代码修改完成后,由于站点启用了 W3 Total Cache 插件,前端页面存在静态缓存,必须彻底清空缓存才能让新注入的 meta 标签在前端源代码中体现。

在 W3 Total Cache 仪表盘中清空所有缓存

(如上图所示,点击“清空所有缓存”,确保修改即时生效)

四、 实战测试:中英双语标签页源码验证

为了验证代码在 Polylang 环境下的精准度,我选取了两组标签进行测试:“bsc”标签(1篇文章)“鼠标”标签(2篇文章),并分别在中文和英文路径下查看了网页源代码。

1. 单篇文章的薄内容标签(预期:有 noindex)

中文路径测试 (/tag/bsc/):
在网页源代码中,成功匹配到了我们注入的 meta 标签,说明单篇中文标签页逻辑生效。

/tag/bsc/ 网页源代码中成功出现 noindex 标签

英文路径测试 (/en/tag/bsc/):
由于 Polylang 按语言独立计数,英文标签下同样只归属了 1 篇文章,因此英文页面的源代码中也成功输出了 noindex 标签。

/en/tag/bsc/ 网页源代码中成功出现 noindex 标签

2. 两篇文章的达标标签(预期:无 noindex)

中文路径测试 (/tag/鼠标/):
该标签下有 2 篇文章,达到了我们的索引门槛。查看源代码,头部并没有出现 name="googlebot" 的 noindex 标签,仅有 WordPress 默认的 max-image-preview:large

/tag/鼠标/ 网页源代码中未出现 noindex 标签

英文路径测试 (/en/tag/鼠标/):
同样,英文版该标签下也包含了 2 篇文章,源代码中同样没有拦截索引的标签,允许搜索引擎正常索引。

/en/tag/鼠标/ 网页源代码中未出现 noindex 标签

五、 测试结论

经过验证,本次代码部署完美达成了预期目标:

  • https://www.shuijingwanwq.com/tag/bsc/ (1篇文章) – name="googlebot"
  • https://www.shuijingwanwq.com/tag/鼠标/ (2篇文章) – name="googlebot"
  • https://www.shuijingwanwq.com/en/tag/bsc/ (1篇文章) – name="googlebot"
  • https://www.shuijingwanwq.com/en/tag/鼠标/ (2篇文章) – name="googlebot"

关于已被索引页面的影响: 对于那些只有 1 篇文章且已被 Google 收录的标签页,添加此标签后,Googlebot 在下次抓取时读取到 noindex 指令,会将其从索引库中移除。这正是我们期望的“排毒”过程。同时,由于我们声明了 follow,页面上的链接权重依然可以正常传递给那唯一的一篇文章,实现了真正的低成本高收益

彻底清理 WordPress 空标签:消除软 404,拯救抓取预算 WordPress Tag SEO优化实战:用WPCode实现“低内容标签页 noindex”完整踩坑与修复记录

WordPress 网站维护、性能优化与博客运营咨询

本站已持续运营超过 10 年,累计发布 1000+ 篇原创技术文章,长期实践 WordPress 网站建设、CDN / Cloudflare 配置、缓存优化、Google SEO、广告变现和多语言网站运营。

如果你的 WordPress 网站遇到访问慢、缓存异常、插件冲突、广告不显示、SEO 基础结构混乱、CDN 配置不确定等问题,可以联系我做一次远程技术排查。

适合以下用户:
✅ 个人博客站长
✅ WordPress 网站运营者
✅ 独立开发者与内容创作者
✅ SaaS 产品官网运营团队
✅ 希望优化网站速度与稳定性的站点

服务内容:
✅ WordPress 速度优化
✅ Cloudflare / CDN / 缓存配置排查
✅ 插件冲突与页面异常排查
✅ AdSense 广告显示问题排查
✅ SEO 基础结构检查
✅ 博客运营与商业化咨询

如需了解方案或交流相关问题,请直接联系我,并注明:WordPress 维护咨询

联系方式:
Telegram:@shuijingwan
微信:13980074657
邮箱:shuijingwanwq@gmail.com

评论

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

这个站点使用 Akismet 来减少垃圾评论。了解你的评论数据如何被处理