关于如何解决wordpress中文tags页面打不开的这个问题,以前碰到过,今天分享给大家。
首先要说的就是wordpress中文tags页面打不开的这个问题不会出现在linux主机或者服务器上面,出问题的往往是windows环境。下面介绍几种解决办法:
1、直接换网站环境,将windows换成linux系统,一了百了,本身windows环境对wordpress的支持就不是太友好,我是强烈建议换环境的;
2、改代码,改代码的方法几种
第一种方法:
因为WordPress暂时不支持中文编码,所以那么就需要让WordPress能支持中文的编码形式,也就是UTF-8和GBK编码。具体解决办法如下:
在你博客的跟目录下的wp-includes文件夹中找到classes-wp.php(3.1以前版本是classes.php),然后在这个文件做以下修改。
1.找到代码
if ( isset($_SERVER['PATH_INFO']) ) $pathinfo = $_SERVER['PATH_INFO']; else $pathinfo = ''; $pathinfo_array = explode('?', $pathinfo); $pathinfo = str_replace("%", "%25", $pathinfo_array[0]); $req_uri = $_SERVER['REQUEST_URI'];
改为以下代码:
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");
第二种方法:
打开FTP,找到根目录下的wp-includes,打开wp-includes找到rewrite.php。只要简单地修改这个文件就可以了,找到以下代码:
function get_tag_permastruct() { if ( isset($this->tag_structure) ) return $this->tag_structure; if (empty($this->permalink_structure) ) { $this->tag_structure = ”; return false;}
只要在empty前面加个英文的”!”就可以了,然后把这个文件上传到wp-includes的目录下就可以了。
第三种方法:直接修改标签的别名,因为wordpress支持不支持英文,只支持英文、拼音或者数字,所以只要把tags标签别名改成英文就可以了。
评论