如何去掉分类目录 URL 中的 category-wordpress教程

WordPress 默认生成的分类目录 URL 中是带 category 的,比如我爱水煮鱼的 WordPress 的分类目录的 URL https://blog.wpjam.com/category/wordpress/ 就带了 category。那么如何去掉呢?

方式一:使用插件

网上有很多相关的 WordPress 插件,都可以解决这个问题,不过大部分插件都是把所有的分类都写入 WordPress 的 rewrite 规则,这样会造成 rewrite 规则会非常臃肿,反而会使得 WordPress 变慢

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

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

如何去掉分类目录 URL 中的 category-wordpress教程

方式三:最佳方法

如果仔细观察一下去掉 category 的分类目录 url:https://blog.wpjam.com/wordpress/,是不是和 WordPress 的页面规则是一样的,比如我爱水煮鱼的关于页面:https://blog.wpjam.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.xp8.net/web/3204.html

(0)
打赏 微信扫一扫 微信扫一扫
WordPress 性能优化:为什么我的博客比你的快
上一篇 2019年1月23日 下午8:11
2019阿里云优惠-阿里服务器活动-阿里优惠券活动
下一篇 2019年2月23日 下午9:45

相关推荐

  • wordpress删除文章时自动删除文章图片-WP教程-学派吧

    前言 很多朋友wordpress删除文章时候文章的图片和略缩图源文件并不会从服务器删除,对于强迫症来说这太难受了,去网上搜索了一下,有相关的教程,下面的代码放到主题的functions.php文件中就可以 /* 删除文章时删除图片附件 */ function delete_post_and_attachments($post_ID) { global $wp…

    建站问题 2018年10月3日
    5.0K00
  • WordPress固定链接伪静态设置教程

    伪静态是需要服务器支持的,比如mod_rewrite模块,具体可以咨询服务器管理员,另外部分服务器可能不支持中文链接,这个需要注意。设置方法 进入WordPress后台设置>固定链接,其中第一个“朴素”就是默认的设置,后面几个是WordPress给出的几个可选项,如果都不是你喜欢的链接格式,那么也可以使用最后一个自定义结构。使用自定义结构的话,就需要先了解下…

    建站问题 2018年7月12日
    4.8K00
  • WordPress如何防范大规模暴力破解攻击教程解决方法

    前几天一个客户网站几天遭到了大规模的暴力破解攻击,攻击者首先扫描互联网上的 WordPress 网站,然后利用 Web 服务器组建的僵尸网络不断尝试用户名和密码试图登录管理后台。 一般的僵尸网络是利用普通 PC,而这次攻击者使用了超过 9万台 Web 服务器,服务器比 PC 有更大的带宽和连接速度,因此可以更快的发动攻击。攻击者暴力攻击WordPress 管…

    2018年10月28日
    4.3K00
  • Nginx下如何设置WordPress为多站点-WP搭建教程

    1、准备 2、Nginx配置 3、安装WordPress 4、启用多站点功能 5、设置域名映射 6、结果 WordPress的多站点功能允许安装一个WordPress程序的情况下,实现多个站点(也就是一套程序,可以绑定多个域名或子域名)。 每个站点拥有独立的主题、插件、文章以及页面。 这样可以极大的减少了维护和更新多个WordPress安装程序的麻烦, 并且…

    2018年10月2日
    4.5K00
  • phpcms v9伪静态规则iis/apache配置方法

    [v_tips]本文讲的是phpcms v9伪静态规则iis/apache配置方法, phpcms v9伪静态规则 win下IIS 新建一个记事本文件,将文件名改为:httpd.ini。再将以下代码粘贴进去。 代码如下 复制代码 [ISAPI_Rewrite] # 3600 = 1 hour[/v_tips]phpcms v9伪静态规则 win下IIS 新建…

    建站问题 2018年7月17日
    4.8K00

发表回复

登录后才能评论
联系我们

联系我们

18838889666

在线咨询: QQ交谈

邮件:xinyun@88.com

工作时间:周一至周五,9:30-18:30,节假日休息

添加微信
添加微信
分享本页
返回顶部