如何去掉分类目录 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 多站点网络克隆网站数据和设置

    现在,很多主题作者都是用 WordPress 多站点网络来做主题演示站,那就遇到一个数据部署的问题,每次都要重新设置一些基本的选项,导入文章和附件等等,实在是麻烦。今天倡萌推荐一个专门解决这个问题的插件 Multisite Cloner ,它可以很方便地将网络中任何一个站点的设置和数据都克隆到另外一个站点,包括设置、文章和其他内容、主题选项和上传的文件等等。…

    2018年7月12日
    8.6K10
  • WordPress快速ssl全局设置及常见故障解决方法

    前言 现在SSL越来越普及了。但是很多朋友不知道如何设置、今天学派吧-给新朋友演示下。 一、系统文件修改 二、后台文件修改 三、安装插件 首先按照自己的项目运行服务器把证书安装好,干货君以腾讯云为例:证书安装指引 – SSL 证书 – 文档平台 – 腾讯云文档平台 – 腾讯云。 干货君使用nginx反向代理,a…

    2018年10月3日
    5.1K00
  • nginx+php-fpm搭建wordpress-WP搭建教程

    1. 准备 LNMP 环境 2. 安装wordpress 3. 配置 一开始搭建的hexo博客,hexo博客有个缺点,他是用nodejs的服务器,不太稳定,服务器经常挂。所以最后还是决定用nginx+php-fpm搭建一个wordpress站点,这样网站就比较稳定。废话不多说,直接进入主题。 我是用的centos的服务器,下面的一些个命令也是centos的命…

    建站问题 2018年10月2日
    3.7K00
  • 微软Azure云服务故障超过24小时,原因竟是——被雷劈了 -学派吧

    9 月 4 日,微软在美国中南部地区的圣安东尼奥数据中心由于雷电天气影响导致电压激增,数据中心的冷却系统发生故障。为保证数据和硬件完整性,数据中心的自动化措施强制关闭了系统电源以防止机器因过热造成损坏。这一事故引发了 Azure 中断,Office 365 以及 Azure Active Directory 服务都受到影响,并且恢复相关存储服务经历了很长时间…

    建站问题 2018年10月16日
    3.3K00
  • 宝塔如何设置WordPress使用主题自带自定义404页面

    许多人用宝塔建站后会发现,当访问一个不存在的页面时,默认并不会显示自己WordPress主题漂亮的404页面,而是会显示宝塔自带的一个 404 Not Found 的页面,没有任何内容,用户体验非常不好 在本文中,我们就教大家如何设置宝塔面板,让WordPress使用自带的404页面 我们打开宝塔后台 – 网站,选择要设置的站点域名 在左侧的标签中有一个叫做…

    2026年1月3日
    60400

发表回复

登录后才能评论
联系我们

联系我们

18838889666

在线咨询: QQ交谈

邮件:xinyun@88.com

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

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