完美解决WordPress中文标签访问404的问题,非插件版

买卖易最近收到会员咨询,说他的WordPress站点击文章里的中文内链就显示404,感到很郁闷,以为是主题文件functions.php的问题,一排查,不是,百度搜,很多wordpress用户都遇到这种问题,网上的教程很多,既有插件版的也有修改源码的还有设置伪静态规则的,但试了多种方法都没有成功。

在此,买卖易统一发布一种可以完美解决该办法还不影响站点负担的办法——修改部分源码完美实现。
WordPress站点做了伪静态,并定义了固定连接的格式后,会出现中文标签404的问题,其它都正常,就是在wordpress中文tag标签打开是404页面错误。
由于wordpress是外国的产品,所以并没有考虑中文标签的兼容性问题,不少朋友都会遇到中文标签404的问题,下面我来分享一下解决这种蛋疼的问题方法。
解决 WordPress 无法打开中文标签链接的文章(服务器需要支持 UTF-8,不再需要修改文件支持中文链接。)
首先找到wordpress的wp-includes目录下的class-wp.php文件,进行如下修改即可完美解决。
wp-includes/class-wp.php (WordPress 5.3.2在167行):

$pathinfo = isset( $_SERVER['PATH_INFO'] ) ? $_SERVER['PATH_INFO'] : '';

修改为:

$pathinfo = isset( $_SERVER['PATH_INFO'] ) ? mb_convert_encoding($_SERVER['PATH_INFO'], 'utf-8', 'GBK') : '';

wp-includes/class-wp.php (WordPress 5.3.2在171行):

list( $req_uri ) = explode( '?', $_SERVER['REQUEST_URI'] );

修改为:

list( $req_uri ) = explode( '?', mb_convert_encoding($_SERVER['REQUEST_URI'], 'utf-8', 'GBK') );

《完美解决wordpress中文标签404》

免责声明:
1、本站提供的一切软件、教程和内容信息等资源均仅限用于学习和研究目的,不保证其完整性,严禁将上述资源用于商业或者非法用途;
2、本站仅提供共享服务,不提供任何技术咨询服务,请知悉谅解;
3、如果对相关资源比较满意,请前往购买支持正版,得到更好的正版服务;
4、本站信息来自网络公开信息的收集整理,版权争议与本站无关。我们非常重视版权问题,如有侵权请联系我们,我们会第一时间进行处理。
本文链接:https://www.mmeasy.cn/1073.html

0
封面图
【严正声明】
1、本站所分享的工具及源代码仅供研究、学习所用,不保证其完整性,若要商用请联系原开发者或开发公司;
2、所有资源切记不能用于一切违法犯罪活动,否则一切法律后果自负,请不要贪图小利走上不归路;
3、本站资源均来自互联网收集或网友分享,若有侵权,请联系站长删除,谢谢。
没有账号? 注册  忘记密码?