如何去掉分类目录 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 3.0以上的版本支持直接开启多站点模式,这样一来,你可以在一个后台切换多个站点进行管理。多站点模式可以使用多个不同的域名绑定,避免了在同一个服务器安装多个WordPress的尴尬,管理多个网站非常方便,下面就介绍一下安装和启用多站点的操作方法。 开启网络配置 在网站根目录下的 wp-config.php 添加: define(‘WP_AL…

    建站问题 2018年10月2日
    4.0K00
  • nginx+php-fpm搭建wordpress-WP搭建教程

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

    建站问题 2018年10月2日
    3.6K00
  • WordPress内核中一个任意文件删除漏洞,带来的危害,WP安全

    有运维或服务器方面的需求,可以联系博主 QQ 7271895 简介 受影响的版本 攻击带来的影响 技术细节 临时修复程序 时间线 总结 导语:WordPress是网络上最受欢迎的CMS。在这篇文章中,我们将讲述在WordPress内核中引入一个经认证的任意文件删除漏洞,这个漏洞可能会导致攻击者执行任意代码。 简介 WordPress是目前网络上最受欢迎的CM…

    2018年10月2日
    3.1K00
  • WordPress提示502 Bad Gateway错误的解决方法

    [v_tips]502 Bad Gateway错误的含义是什么?[/v_tips] 502 Bad Gateway错误是个HTTP状态代码,意味着互联网上的一台服务器收到了来自另一台服务器的无效响应。用技术性更强的话来说,502 Bad Gateway意味着代理(网关)服务器无法获得来自上游服务器的有效响应或任何响应。 W3.org的官方文档指出,这与以5(…

    2018年9月5日
    7.2K00
  • 宝塔面板FTP中PASV模式失败正在尝试PORT或数据Sock错误的解决方法

    刚刚为SEO博客的新服务器进行了配置,用filezilla架设了ftp服务器,可是在用flashfxp进行连接的时候发现出pasv模式失败,连接很慢,传不了文件,经过检查学习,解决问题!特把相关资料分享出来!1.什么是ftp中的PASV和PORT模式FTP的连接一般有两种:一种是客户程和服务器传输命令的,另一种是数据传送的连接。FTP服务程序一般会支两种不同…

    2018年5月7日
    4.0K00

发表回复

登录后才能评论
联系我们

联系我们

18838889666

在线咨询: QQ交谈

邮件:xinyun@88.com

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

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