WordPress 其实在网站页面规范上做到了非常好的白帽 SEO,不仅有 canonical 规范,还有针对 404 页面,搜索页面的 meta 标签 robots 属性的设置,而页面中一旦被设置为 noindex 或 nofollow,那么也就意味着页面无法被搜索引擎索引收录,对于需要做聚合页面 SEO 的站长来说无疑就是一大缺陷。
如果子凡我没猜错的话,WordPress 对搜索结果页面的 robots 属性设置是在 5.7 版本开始出现的,当然如果设置了 WordPress 的“对搜索引擎的可见性”,那么网站的所有页面都会被设置 noindex 和 nofollow,所有如果你的 WordPress 上线或者很久没有任何收录可以检查一下这项问题。
下面子凡想要做的就是解决 WordPress 搜索结果页面被设置 noindex 和 nofollow 的问题,因为 WordPress 默认就是这样规范的,除了首页、分类目录、文章页、标签页、页面等,404 页面和搜索结果页面都会被拒绝索引收录,不是非常利于网站的聚合页面 SEO,但是又无法直接通过设置关闭,所有子凡研究出来了一个解决办法。
1 2 3 4 5 |
//移除 meta robots add_filter('wp_robots', 'fanly_basic_robots_remove_noindex', 999); function fanly_basic_robots_remove_noindex( $robots ){ return get_option('blog_public') ? [] : $robots; } |
将以上代码放置在你当前所使用的 WordPress 主题中的 functions.php 文件中,就可以移除 WordPress 搜索结果页面的 noindex 和 nofollow 了,这样搜索结果也能够被搜索引擎抓取收录了,但是大家也可以给搜索结果做一个伪静态目录,以及规范搜索结果,因为如果搜索结果被人恶意利用也是一件非常可怕的事情,大家合理适当的开启和使用就会有利于网站 SEO 优化。