最近很多使用wordpress建站的朋友说自己的网站中的 中文标签打开会出现404页面,这是由于编码格式不支持导致的,发现凡是使用是windows主机,并且做了伪静态的网站都会出现这种情况(所以建议大家在购买主机的时候选择linux或是unix主机),很多时候觉得难以抉择,不做伪静态当然可以解决,但是这样对seo又不是很好了,有没有更好的方法可以解决这个问题呢?
答案是肯定的,其实很多时候我们纠结的很久的问题,只需要在baidu,或是谷歌搜索下就可以搞定了,今天小川就找到了一个解决这个问题的帖子,但是很多朋友又为此纠结了,因为帖子中的解决方法是针对3.0版本一下的wordpress程序,而我们都知道现在的wordpress程序已经是3.3.1版本的了,有点不适用,按照帖子内容在wp-include文件夹下是找不到classes.php文件的。
小川也研究了下,不过是用的最笨的方法,一个一个找带有class字样的文件的,最后找到了class-wp.php这个文件,需要修改的代码也正是在这个文件夹内,这里小川也顺便复述下解决方法:
1、打开wp-include文件夹,找到并打开class-wp.php文件;
2、找到下面一句代码:
$pathinfo = $_SERVER[‘PATH_INFO’];
把这句替换为下面的一句:
$pathinfo = mb_convert_encoding($_SERVER[‘PATH_INFO’], “UTF-8”, “GBK”);
3、在找到下面的一句代码:
$req_uri = $_SERVER[‘REQUEST_URI’];
替换为:
$req_uri = mb_convert_encoding($_SERVER[‘REQUEST_URI’], “UTF-8”, “GBK”);
保存文件,并上传覆盖原始文件即可。
这样你的主题就能完美支持中文标签了。
评论(3)
$pathinfo = isset( $_SERVER[‘PATH_INFO’] ) ? $_SERVER[‘PATH_INFO’] : ”; list( $req_uri ) = explode( ‘?’, $_SERVER[‘REQUEST_URI’] );老师,我的文件是这两个代码,但按你的改后还是无变化,没有办法解决了,请老师尽快回复,或者老师帮忙看一下我的网站问题http://hktk123.com/
支持了中文标签,url的唯一性不就不存在了吗?
嗯看到了 谢谢老师的分享!