原来用的linux的主机,在设定固定连接后不存在中文tag、中文分类找不到文章,但自从换了godaddy的windows主机以后,由于iis7对php支持不够好的原因,中文的tag,中文的分类等,就会找不到文章,比如:
正常,能访问日志:www.example.com/?tag=中文
不正常,不能访问日志:www.example.com/tag/中文 ;这是系统的原因,没有办法,但我们为了seo还必须启用固定链接,怎么办呢?整了上午,总算找到了解决的方案,而且支持目前的2.9.1版本!
网上有各种版本的解决方法:第一种是修改wp-includes/classes.php文件,这个方法可能在中文系统下有用,但是我在godaddy的主机上用这个方法,直接显示错误。所以这个方法是由局限性的。
第二种方法:修改wp-includes/rewrite.php
function get_tag_permastruct() {
if (isset($this->tag_structure)) {
return $this->tag_structure;
}
if (empty($this->permalink_structure)) { //—–this line need change——
$this->tag_structure = ”;
return false;
}
把第5行改为
第三种方法:
一个一劳永逸的解决方法,还不用修改源代码,去你的WordPress后台,到“设置”-“固定链接”里,在“标签前缀”
里填上“?tag=”,这样,你点击文章中的中文tag时,自动打开了“www.example.com/?tag=中文”格式的页面,这样一来,你的tag就正常了。
经过验证,后面两种方法可以完美解决这个问题。