让WordPress支持中文URL

简介: 之前在配置WordPress的时候做了个固定链接(%postname%),但在这之后我在我无意间点到文章的中文TAG的链接(例如http://yoursite.com/p/tag/这是中文的)直接给我弹了个404 Not Found,这我很郁闷啊,不能正常访问会影响到网站的用户体验的,不过经过多方查找资料才发现问题原因。

之前在配置WordPress的时候做了个固定链接(%postname%),但在这之后我在我无意间点到文章的中文TAG的链接直接给我弹了个404 Not Found,这我很郁闷啊,不能正常访问会影响到网站的用户体验的,不过经过多方查找资料才发现问题原因。wordpress 由于使用的是UTF8字符集.但是URL访问提交过来的URL中文字符是GBK 所以根据这个GBK的字符串查找文章标题,所以说肯定是找不到。。。 也就是说要对这个GBK字符串转换成UTF8
让WordPress支持中文URL
经过多方查找,终于知道了不用插件只需简单的改两下代码就可以支持中文URL了。
1_0joMfXDhu12l2D_i0HTBsg

以下是修改方法

修改wp-includes目录下的class-wp.php文件:

1、找到

$pathinfo = $_SERVER['PATH_INFO'];

修改为

$pathinfo = mb_convert_encoding($_SERVER['PATH_INFO'], 'UTF-8', 'GBK');

2、找到

$req_uri = $_SERVER['REQUEST_URI'];

修改为

$req_uri = mb_convert_encoding($_SERVER['REQUEST_URI'], 'UTF-8', 'GBK');

以上两处修改都在函数parse_request内,wordpress4.8和wordpress4.9.8的会有点出入,我把我修改过后的代码的截图放上来

让WordPress支持中文URL
b450b2797ba6cbb7fd1f83e90634e6f6_1

经过修改之后 WordPress URL里就可以支持中文字符串了

目录
相关文章
|
关系型数据库 数据管理 MySQL
修改WordPress地址(URL)出现错误的解决方法。
在修改WordPress地址(URL)后,出现了无法访问管理页面的情况时,使用此方法可以解决该问题。
935 0
修改WordPress地址(URL)出现错误的解决方法。
wordpress站内搜索结果页URL伪静态如何操作
  站内搜索页面的优化一直被很多人忽略,只是按cms自带的默认设置,其实搜索结果页是一块宝藏,url重写是提升的重要一步。之前我们写过帝国CMS搜索页伪静态实现方法,那么,wordpress站内搜索结果页URL伪静态如何操作呢?通过查找相关文档,在当前主题的functions.
1268 0
wordpress去掉category怎么操作让url更简洁友好
  用wordpress建站是比较流行的,全球将近25%的站点是用wordpress搭建的。有很多的模板、插件可以选择,当然最好还是能自己优化。URL固定链接就是之中一个基础的技巧。有网友问如何去掉url中的category,层级太多不太友好。
1066 0
|
4天前
|
弹性计算 运维 Ubuntu
使用阿里云服务器自动搭建WordPress网站流程,超简单by系统运维管理OOS
本教程介绍如何使用阿里云服务器(ECS)和系统运维管理OOS自动搭建WordPress网站,支持Ubuntu、CentOS及Alibaba Cloud Linux等操作系统。前提条件包括ECS实例处于运行中、有公网IP且安全组已开启80端口。安装步骤简单:进入ECS快速购买控制台选择预装WordPress,确认下单后通过管理控制台查看实例详情并开放安全组端口。最后,通过实例公网IP访问,出现WordPress登录页即表示安装成功。
|
6月前
【wordpress教程】wordpress博客网站添加非法关键词拦截
有的网站经常被恶意搜索,站长们不胜其烦。那我们如何屏蔽恶意搜索关键词呢?下面就随小编一起来解决这个问题吧。
93 1
|
3月前
|
XML 搜索推荐 机器人
五个 WordPress 插件可提高网站参与度
五个 WordPress 插件可提高网站参与度