WordPress点击中文Tag标签出现404解决方案

WordPress点击中文Tag标签出现404解决方案

TypeCho转WordPress之后,发现点击中文tag出现404页面,也就是点击无效了。试了几种修改链接样式,都没效果。也尝试了各种网上找的3中方法:

第一种方法:

打开 WP-include/classes.php(3.1之前版本)或WP-include/class-wp.php(3.1+之后版本,下文称新版)找到第154行(新版为142行),把:

$pathinfo = $_SERVER[‘PATH_INFO’;

替换为:

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

找到第159行(新版为147行),把:

$req_uri = $_SERVER[‘REQUEST_URI’;

替换为:

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

第二种方法:

1、在网站的根目录的wp-includes文件夹中找到“rewrite.php”这个文件;

2、备份一下“rewrite.php”,以防修改出错(改代码之前我们都最好备份一下原代码);

3、打开“rewrite.php”文件中我们找到如下代码:

1function get_tag_permastruct() {if (isset($this->tag_structure)) {return $this->tag_structure;}if (empty($this->permalink_structure)) { //修改这句$this->tag_structure = ”;return false;}if (empty($this->tag_base))$this->tag_structure = $this->front . ‘tag/’;else$this->tag_structure = $this->tag_base . ‘/’;$this->tag_structure .= ‘%tag%’;return $this->tag_structure;}

4、将其中的

” if (empty($this->permalink_structure)) { ”修改为“ if (! empty($this->permalink_structure)) { “;

注意这个里面只加了一个英文“!”号,经测试,使用的这个方法非常有效。PS.直接没找到这个文件内说的这段代码。。。

第三种方法:

最后解决中文TAG 404错误的方法,其实说到底就是ISAPI_Rewrite伪静态的规则没有写好才导致找不到网页文件的。其实就是更改一下规则就可以了:之前的tag伪静态的规则

RewriteRule /tag/(.*)$ /index\.php\?tag=$1

更改后的规则

RewriteRule /tag/(.*)/$ /index\.php\?tag=$1

 

版权声明
转载请注明本文地址:https://www.e363.com/462.html
THE END
喜欢龙网的内容,就支持一下吧!
点赞51赞赏 分享
评论 抢沙发

请登录后发表评论

    暂无评论内容