WordPress中文标签(Tag)显示404怎么办-win主机

上次解决了如何去除WordPress的URL中的index.php又出现中文的tag词打开后无法找到页面,显示404报错新问题,win主机的中文版真是各种问题不断啊。

中文的tag词打开后无法找到页面,显示404报错,烦躁。下面讲一下解决的过程,有三种解决办法,大家可以根据自己的情况更改,如果三种方法都无效,可以更换个主题试试,我开始就是主题导致的各种方法都不行,换了个主题后就好了:

1.手动将每个中文标签(tag)词的URL更改为英文的方式,但是这样对于tag词比较少的网站可
以,如果很多的话,太麻烦了,我不想每次都去一个一个改,放弃这种办法。


tag

2.针对Win服务器

打开 wp-includes/rewrite.php,找到第1039行,把:

if ( empty($this->permalink_structure) )

注意:此文件下有很多的“if ( empty($this->permalink_structure) )”,需修改的是位于第1039行,“function get_extra_permastruct($name)”函数下的那一个。

替换为:

if ( !empty($this->permalink_structure) )

注意:别用windows自带的记事本修改(推荐UltraEdit,Dreamweaver等)。

这样出现的tag url是http://www.leranl.com/?tag=%e4%b8%ad%e6%96%87%e6%a0%87%e7%ad%be这种形式,中间有个?,感觉对搜索引擎不友好,会影响tag词的收录,同样放弃这个方法。

3.转换编码解决 WordPress 中文 Tag 链接问题(推荐)

打开文件:wp-includes\classes.php ,wordpress 3.+ 版本是 wp-includes\classe-wp.php

查找:

$pathinfo = $_SERVER['PATH_INFO'];

修改为:

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

再查找:

$req_uri = $_SERVER['REQUEST_URI'];

修改为:

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

保存,上传,问题解决啦^-^

 

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: