Categories
Wordpress

WordPress 中文标签 Tag 解决方法一则(2.71)

WordPress中文的问题真的很多,固定链接是一个。移植时候又碰到了个标签Tag的问题,英文Tag一切正常,中文就显示NOT FOUND。发现问题主要为IIS对URL截取的时候取得的是GBK的编码,但是我们的主题只要有中文都用的UTF-8的编码,所以我们要对编码进行处理后在交给数据库进行查询。 解决方法:使用PHP内置函数 mb_convert_encoding()进行UTF-8到GBK转换。 1、打开wp-includes\classes.php文件; 2、查找将

$pathinfo = $_SERVER['PATH_INFO'];
$req_uri = $_SERVER['REQUEST_URI'];

分别修改成:

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

我的2.71的classes.php文件分别修改了行153和行158处。

if ( isset($_SERVER['PATH_INFO']) )
  $pathinfo = mb_convert_encoding($_SERVER['PATH_INFO'], "UTF-8", "GBK");
else
  $pathinfo = '';
  $pathinfo_array = explode('?', $pathinfo);
  $pathinfo = str_replace("%", "%25", $pathinfo_array[0]);
  $req_uri = mb_convert_encoding($_SERVER['REQUEST_URI'], "UTF-8", "GBK");

10 replies on “WordPress 中文标签 Tag 解决方法一则(2.71)”

开始玩wp啦~HOHO
好玩不?啥时候来教教我,我不会。。
现在直接在wp的网站上开了一个瞎玩玩。好想自己建一个的
=_=!

Leave a Reply to Edwin Cancel reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.