从WordPress 中删除日期和作者存档页面

  • 酉灿
  • WordPress
  • Jul 26, 2021

WordPress 会自动为网站生成很多存档页面,比如日期存档页面和作者存档页面。这些存档页面会生成很多重复内容和不必要的页面,这可能会对客户浏览网站造成一些影响。如果存档页面对我们来说没有特殊的用途,我们可以移除这些存档页面,以帮助提升 SEO 效果。

WordPress 中默认的存档页面

默认情况下, WordPress 会为我们生成以下存档页面:

  1. 分类存档
  2. 标签存档
  3. 作者存档
  4. 日期存档
  5. 文章格式存档(如果主题支持文章格式的时候)
  6. 搜索结果存档 (搜索结果页面)

如果我们添加了自定义文章类型和自定分类方法,WordPress 还会为我们生成:

  1. 文章类型存档
  2. 分类法项目存档

分类目录存档

如果我们的网站没有使用分类组织内容,所有的文章将被自动添加到 “未分类” 分类目录,这个默认分类目录的存档页面是 http://yourwebsite.com/category/uncategorized,而这个分类目录存档页面的内容将和首页或博客页面的完全一样,这就造成了重复内容的出现。

当然,在某些站点中,WordPress 的分类目录是非常有用的。如果使用恰当,对丰富我们的站点是非常有帮助的。

标签存档

有时候,人们会使用大量的“通用”标签,从SEO的角度来看,这些标签是没有意义的,但是标签可以用一种很灵活的方式将文章关联起来,并将相关内容显示到某个文章中。这意味着您可以在后台继续使用标签,而在前端避免显示标签链接和标签归档页面。

作者存档

当我们的网站有多位作者,并且需要为每个作者生成一个文章作品存时,作者存档是一个很有用的功能,而如果网站只有一个作者,和只有一个分类的情况一样,显示作者存档会为我们的站点生成重复内容,影响 SEO 效果。

日期和文章格式存档

如果我们的网站不是经常更新,日期存档和文章格式存档的意义也不大,用户需要查看什么文章,直接搜索就可以了。

如何移除不必要的存档页面

下面的代码为我们移除了分类、标签、日期和作者存档,直接粘贴到主题的 functions.php 里面即可,如果不想移除某些类型的存档,直接删除判断语句里面的条件即可。

/* 移除不必要的存档页面 */

add_action('template_redirect', 'meks_remove_wp_archives');
function meks_remove_wp_archives(){
    //If we are on category or tag or date or author archive
    if( is_category() || is_tag() || is_date() || is_author() ) {
        global $wp_query;
        $wp_query->set_404(); //set to 404 not found page
    }
}

当然,除了完全删除这些存档,我们还可以通过“noindex” 标签来让 WordPress 忽略这些存档,相对于设置 noindex 的方法,我本人更偏向于删除这些存档,减少一些不必要的页面。

打赏