如何禁用未分类类别URL?

时间:2018-02-13 作者:Ralph

我想禁用未分类的公共URL(即。/category/uncategorized), 因为我没有使用帖子类别,并且在主博客帖子页面上已经有了带有分页的帖子列表。使用未分类的类别URL只会创建重复的页面。

有没有办法完全禁用帖子类别,直到我准备好使用它们?WordPress似乎强制将帖子关联到一个类别。

作为替代,在插件代码中简单地重定向未分类的URL是一种好的做法吗?例如:

function redirect_uncategorized_category($request) {
  if(array_key_exists(\'category_name\' , $request)
     && $request[\'category_name\'] == "uncategorized") {
       wp_redirect(get_post_type_archive_link(\'post\'), 301); exit;
  } else {
       return $request;
  }
}
add_filter(\'request\', \'redirect_uncategorized_category\');
或者我可以创建category-uncategorized.php 文件并强制重定向,如下所示:

<?php wp_redirect(get_post_type_archive_link(\'post\'), 301); exit; ?>
这是最好的方式吗?

谢谢

5 个回复
SO网友:Harsh Barach

首先你需要进去Setting >> Writing. 然后,您需要遵循以下步骤。

Step 1: Change Your Default Post Category

Step 2: Delete Uncategorized

你可能会在Uncategorized 类别你只需要转移那些posts 至新default category. 所以,不要担心你的问题会得到解决。

SO网友:Johansson

无法删除最后一个类别。如果要从默认帖子类型中删除类别,可以使用remove_post_type_support() 功能:

add_action( \'init\', \'remove_categories_from_posts\' );
function remove_categories_from_posts() {
    remove_post_type_support( \'post\', [ \'taxonomy\' => [ \'category\' ] ] );
}
这是未经测试的,但应该可以做到。

another question 关于StackOverflow,这可能对您有用。

SO网友:mtm

Categories 是组织帖子的核心功能,为用户提供可搜索、上下文感知和关系用户体验。

与其试图修改分类法本身,modify the view. 梳理站点的小部件和菜单,删除基于Categories 数据例如,修改Default Sidebaryoursite.com//wp-admin/customize.php 通过删除Categories 小部件。

这种方法为您提供了添加Categories 在以后有意义的地方。考虑是否Pages 可能更适合您的需要,因为他们假定组织更固定。

SO网友:made2popular

与其删除“未分类”,即默认的帖子类别,不如按照此处的定义对其进行重命名。或任何可与博客/网站的利基相匹配的通用类别名称。

链接:https://www.wpdeveloper.xyz/beginners-guide/rename-the-uncategorized-category-on-your-wordpress-blog/

SO网友:Farzad Jafari
if((get_the_category_list() !== \'Uncategorized\')){
                            the_category();
                        }
结束