博客优化

WordPress怎么禁用wp-sitemap里的作者?

publish-date 2024-06-16
update-date 2024-06-30
# WordPress

契机

生成静态网站时看到了一堆https://kazelife.com/author/kaze/page/7/
一页都放20篇文章了,也还是生成了7页,1页100KB呢!

由于本站只有我一个作者,所以我不需要作者页面,
但是WordPress自带的站点地图wp-sitemap.xml默认带了wp-sitemap-users-1.xml,
这个站点地图索引点进去就是我在静态化网站时看到的author页面了。

我不希望本站的sitemap里带了重复内容,想删除,能删吗?怎么删?

顾虑→事实

  1. 影响用户体验?→重复的页面才会对用户造成困扰呢
  2. 影响网站分页?→首页分页还在的,不需要重复分页两次
  3. 影响SEO?→都还没被索引呢,影响个屁;真被索引了现在又有个屁排名,不用在乎

好处

  1. 降低了网站的重复率:由于只有一个作者,作者存档页的分页跟首页文章的分页功能完全重合了
  2. 减轻了用户的注意力负担:不让我的亲亲用户看到重复无用的页面,提高了用户体验
  3. 减小了网站的资源大小:生成静态网站速度也更快,数据小了极简主义者狂喜
  4. 避免了搜索引擎索引无用的页面:对我来说作者存档的一堆分页页面毫无被索引的必要性

方法步骤

把下面代码粘贴进functions.php的末尾,保存

// 禁用wp-sitemap所有用户
add_filter( 'wp_sitemaps_add_provider', function ( $provider, $name ) {
    if ( 'users' === $name ) {
        return false;
    }
    return $provider;
}, 10, 2 );

效果图

访问wp-sitemap.xml可以看到已经没有wp-sitemap-users-1.xml

remove-users-from-wp-sitemap

参考资料

WordPress Developer Resources
New XML Sitemaps Functionality in WordPress 5.5