WordPress 会自动帮我们生成很多存档页面,有时候,这些存档页面是有用的。有时候,这些存档页面会生成很多重复内容和不必要的页面,这可能会对 SEO 效果造成一些影响。如果存档页面没有特殊的用途,我们可以移除这些存档页面,以帮助提升 SEO 效果。
WordPress 中默认的存档页面
默认情况下, WordPress 会为我们生成以下存档页面:
- 分类存档
- 标签存档
- 作者存档
- 日期存档
- 文章格式存档(如果主题支持文章格式的时候)
- 搜索结果存档 (搜索结果页面)
如果我们添加了自定义文章类型和自定分类方法,WordPress 还会为我们生成:
- 文章类型存档
- 分类法项目存档
分类目录存档
如果我们的网站没有使用分类组织内容,所有的文章将被自动添加到 “未分类” 分类目录,这个默认分类目录的存档页面是 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 的方法,我本人更偏向与本文中介绍的方法,减少一些不必要的页面,也可以让用户介绍一些困惑,少即是多。
2 thoughts on “从 WordPress 中移除分类目录/标签/日期/作者存档页面”
移除这些页面之后,网站上的这些页面的链接全变成 404 了如何处理呢?
移除的目的就是让他们变成 404,好让搜索引擎忽略。