首页 期权学习期权知识正文

WordPress如何去掉分类目录URL中的category的方法

xiaojiucai 期权知识 2020-08-17 583 0

方式一:设置分类目录前缀

另外 WordPress 还有一个非常方便的方法,可以说是最简化去掉分类目录 URL 中的 category。只需要在 WordPress 后台,点击「设置」菜单下的「固定链接」子菜单,将「分类目录前缀」设置为 . 就可以:

方式二:推荐方法

如果仔细观察一下去掉 category 的分类目录 url:https://blog.xxxxx.com/wordpress/,是不是和 WordPress 的页面规则是一样的,比如某站的关于页面:https://blog.xxxxx.com/about/,那么我们可以使用页面的 rewrite 规则来处理。

当 WordPress 进入页面 rewrite 规则的时候,我们判断一下,当前的 pagename 是不是某个分类的 slug,如果是,就把当前的 query_var 中的 pagename 换成 category_name,这样就可以实现了。

add_filter('request', function($query_vars) {

if(!isset($_GET['page_id']) && !isset($_GET['pagename']) && !empty($query_vars['pagename'])){

$pagename= $query_vars['pagename'];

$categories= get_categories(['hide_empty'=>false]);

$categories= wp_list_pluck($categories, 'slug');

if(in_array($pagename, $categories)){

$query_vars['category_name']= $query_vars['pagename'];

unset($query_vars['pagename']);

}

}

return $query_vars;

});

add_filter('pre_term_link', function($term_link, $term){

if($term->taxonomy == 'category'){

return '%category%';

}

return $term_link;

}, 10, 2);

原文链接:https://www.qiquanji.com/post/8521.html

本站声明:网站内容来源于网络,如有侵权,请联系我们,我们将及时处理。

版权声明

本文仅代表作者观点,不代表本站立场。
本文系作者授权发表,未经许可,不得转载。