开发者社区> 问答> 正文

关于使WordPress支持中文url的方法

【求关于使WordPress支持中文url的方法】 首先说一下,本人是菜鸟,对技术一窍不通,所以选择WordPress建个网站玩玩,但是发现我的WordPress网站不支持中文URL,网上找了一大堆,最典型的方法就是修改wp-includes目录下的class-wp.php文件,应该是修改编码方式吧,就是第167行、第171行两处。

实测没有作用,版本为WordPress5.4.1

下面还是用实际例子说明一下:

1.WordPress站内英文搜索URL显示方式

http://域名/search/关键词:http://tsq360.com/search/ocr

可以看出url里的关键词显示正常

2.WordPress站内中文搜索URL显示方式

http://域名/search/关键词:http://tsq360.com/search/%E5%BE%AE%E4%BF%A1

可以看出url中的关键词显示不是中文,不大懂技术,猜测应该是16进制还是多少进制的显示吧,总而言之应该是编码方式的问题。

3.按照知乎上以及很多站长的方法测试了,都没有解决问题,具体方法也贴一下:

进入wp-includes目录,打开该目录下的class-wp.php文件。(备份先!) 找到 $pathinfo = isset( $_SERVER['PATH_INFO'] ) ? $_SERVER['PATH_INFO'] : ''; (第167行)其实可以Ctrl+F查单词SERVER 将第二个$_SERVER['PATH_INFO']替换为mb_convert_encoding($_SERVER['PATH_INFO'], 'UTF-8', 'GBK')(注意分号) 再找到 list( $req_uri ) = explode( '?', $_SERVER['REQUEST_URI'] );(第171行) 将$_SERVER['REQUEST_URI']替换为mb_convert_encoding($_SERVER['REQUEST_URI'], 'UTF-8', 'GBK') 保存,WordPress URL里就可以支持中文字符串了!

【求让WordPress网站url可以显示中文关键词的方法】 这里在说明一下,修改wp-includes目录下class-wp.php文件中第167行、第171行两处那个方法,在WordPress5.4.1中没有任何效果,作者测试多的版本是5.3.2zh-CN。

展开
收起
游客gf4qbsw5aw26o 2020-05-17 19:21:41 799 0
0 条回答
写回答
取消 提交回答
问答排行榜
最热
最新

相关电子书

更多
低代码开发师(初级)实战教程 立即下载
冬季实战营第三期:MySQL数据库进阶实战 立即下载
阿里巴巴DevOps 最佳实践手册 立即下载