测试分组下的两百个页面原本在模板里加了 noindex,主题升级后这行消失,两周内索引数涨了 190,后台状态是已编入索引。第一次遇到会往复杂处想,其实漏掉的多是个小前提。

<meta name="robots" content="noindex, nofollow">
<!-- 由 functions.php 的 wp_robots 钩子输出,别放 header.php -->

noindex 写在主题的头部模板里,升级时整个文件被覆盖。这类标签跟着主题走,主题一换就丢,子主题也未必继承。这一点先确认清楚,后面就不用反复试。

碰到「noindex 被覆盖」这类问题,我习惯先把当前配置原样备份一份,改坏了立刻换回来,不用现场推。把这次用到的命令存进笔记,比记住结论有用,换个环境还能照着走。

改完隔一天再看一次,当场正常不代表能稳住。测试环境和线上的差别,往往就在版本号和那几行被忽略的配置上。

具体做法是,把 robots 标签移到插件或主题函数文件,别放模板;按条件输出,只作用于测试分组;升级前对比模板文件差异;上线后抽查测试页的响应头。

改完照着核一遍,测试页源码里重新出现 noindex,索引数不再上涨并逐步回落。

作者 9823189