win+IIS WordPress 3.5版 4.0版如何解决中文TAG标签不支持404错误的问题?

最近发现用WordPress做的博客中文tag都不好用,点击后是404错误,在网上找了一些方法,尝试后都不行,最后总算解决,分享出一些经验希望对大家有所帮助。

1、大部分百度的教程都是3.5以前版本的,针对3.5并不是好用的。

2、关于加!的方法 ,

打开 wp-includes/rewrite.php,找到第1000行,【3.5版本在1039行】把:

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

替换为:

if ( !empty($this->permalink_structure) )【其实就是用“!”屏蔽了错误】
注意:别用windows自带的记事本修改(推荐UltraEdit,Dreamweaver等)。

经过实践,这个方法我测试后,只能消除404错误,但无法根据TAG找出相关的教程。

3、伪静态规则方式测试——以及修改rewrite文件,经测试都没实现正确访问

4、最终测试有效的方法是:

修改wp-include中的class-wp.php

wodpress 3.5文件是class-wp.php 之前的版本可能是classes.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”);

对于4.0版:感谢非常无聊提供

1.查找代码:

$pathinfo = isset( $_SERVER[‘PATH_INFO’] ) ? $_SERVER[‘PATH_INFO’] : ”;

找到后在前面加上双斜杠//注释掉,注释掉后的效果:

  1. //因为中文标签404显示做的修改。
  2. //$pathinfo = isset( $_SERVER[‘PATH_INFO’] ) ? $_SERVER[‘PATH_INFO’] : ”;

再罗嗦一句,大家在修改代码的时候一定要像(1)一样做好标记,方便你想改回去的时候不用再四处查找咯!

2、特别提醒,在网上搜解决方案的时候找到很多早版本相同问题的解决方案,里面还有一条是要修改下面的代码:

$req_uri $_SERVER['REQUEST_URI'];

在此提醒本条不用修改也不要注释,修改了会报错,注释了你点任何标签都会返回首页。

3、至此整个修改完成,保存文件或者是上传覆盖,Enjoy!


免责声明:
1、本站部分内容由用户自行上传分享,仅供分享学习交流,未经上传用户或原创作者书面授权,请勿作他用或商用。
2、具体内容发布者信息,可以通过文章底部左下角“头像”区域查看。
3、本站对所有发布信息一律经过审核后发布,但因版权以及作者信息追溯复杂,并没有相关可追溯查源系统;我站只能尽己方之力进行审核,并号召大家尊重版权,希望原创作者发现后第一时间联系我站进行删除处理。
4、我站要求外来转发或者分享信息务必保留来源等相关信息,希望得到原创作者的鼓励和认可;帮助您获得更多用户的认可。
5、未尽事宜,请联系微信:93547942 菠菜哥,协商处理。
砚台酪-18年致力于帮助实体商家、企业更低成本、更高效的做好互联网营销推广!! » win+IIS WordPress 3.5版 4.0版如何解决中文TAG标签不支持404错误的问题?
在线客服
在线客服
热线电话
QQ客服