Home > 所感所想所悟 > wordpress乱码、wp中文链接打不开解决办法

wordpress乱码、wp中文链接打不开解决办法

December 19th, 2010 Leave a commentGo to comments

买空间够域名,兴冲冲地安装上 WordPress ,换上最中意的主题。忙完这些,你擦了擦额头上的汗,上下打量着你面前的艺术品。“嗯,确实不错,真是太厉害了,我都不免佩服自己了。”心里想着,禁不住还点了点头,自豪感油然而生。

wordpress博客源码中中文是乱码

wordpress博客源码中文出现乱码

心满意足的充上一杯咖啡,突然间你却发现了瑕疵!怎么那么多官方链接?版权信息怎么不是自己的?你的用斗鸡眼看着,越看越难受,不禁抓耳挠腮起来,不成我要立即毙了它们!你放开咖啡杯,甩开了膀子,没来得及休息的你又开始劳作了。

有了建博的经验,自信心在膨胀,事实上你做的也得心应手。鼠标连点键盘猛敲,轻而易举地找到并歼灭了瑕疵;一鼓作气把胜利的红旗插在了最高处——加入了自己版权。打开FTP软件,惬意的喝了一口冰凉的咖啡,传上去了,F5刷新预览。完了——乱码了!

WordPress乱码表现在哪里?

  1. 编辑后上传,浏览器里只有中文字符乱码。
  2. 编辑后上传,浏览器中文字符正常源文件乱码。
  3. 使用永久链接,中文链接打不开,显示404错误。
  4. 使用永久链接,中文标签打不开,英文可以。
  5. 使用永久链接,中文标签分页打不开,英文可以。

你把“没有共产党,就没有新中国”加入到底部,预览时这几个字是乱码,你把“信春哥,没乱码”加入到底部,照样是乱码。奶奶个熊,你是不是见鬼了?我告诉你,鬼就和爱情一样,都在说都在讲,可又有谁见过?因此,你不是见了鬼,相反这是常识性错误。编辑时只要注意,就可以避免中文乱码产生了。

ANSI编码:系统预设的标准文字储存格式。不同的国家地区制定了不同标准,由此产生了 GB2312 , BIG5 ,  JIS 等各自的编码标准。ANSI专为电脑工业建立标准,它是世界上相当重要的标准。 在简体中文系统下,ANSI编码代表GB2312编码,在日文操作系统下,ANSI 编码代表 JIS 编码。 不同 ANSI 编码之间是互不兼容的。

因此无法将两种语言文字,存储在一个ANSI编码文本中,信春哥也不成。WordPress主题字符编码集一般是ANSI,代码是英文的,你把中文硬塞进去,不产生乱码才怪。

使用文本编辑器编辑文件时,如果加入了中文,字符集就会发生变化,直接保存上传服务器就会出现上面乱码,这就是乱码产生的原因。注意:记事本默认以ANSI编码保存。因此抛弃记事本,使用Editplus、Notepad++、UltraEdit、Dreamweaver等软件编辑是不错的选择。

WordPress乱码怎么解决?

UTF-8编码:UTF-8编码是UNICODE的一种变长字符编码又称万国码,由Ken Thompson于1992年创建。现在已经标准化为RFC 3629。UTF-8用1到6个字节编码UNICODE字符。用在网页上可以同一页面显示中文简体繁体及其它语言(如日文,韩文)。

一、保存文件为UTF-8编码解决乱码

读了上面内容,你或许就该明白了。只要把你编辑的网页保存为UTF-8编码,就能解决博客中文乱码问题。另外,已经出现中文乱码的源文件,只要重新保存为UTF-8编码,问题也能解决。一句话:把含有多种编码的网页另存为UTF-8编码就能解决中文乱码问题

二、避免出现中文来杜绝乱码

在博文《用poedit给wordpress语言包增加个性化内容》里我使用了一种方法,把中文先翻译成英文或拼音,然后使用poedit工具放在Wordpress语言包里,通过函数调用等价的英文来显示。函数功能是把英文翻译成中文的。这个办法虽然拐弯抹角,但通用性强,值得大家一试。

比如:我博客底部的联系方式:Email:114971497#qq.com address:红专路政七街裁员大厦B座16楼 TEL:15838090520 ,我把这段翻译成:budeyan_lianxi(只要唯一就好)。使用poedit工具添加到了Wordpress语言包里。然后我使用翻译函数调用,中文就不用出现在你编辑的文件里了。

<?php echo  esc_attr(__('budeyan_lianxi')); ?>

WordPress中文链接打不开的解决办法

当Wordpress使用%postname%参数做永久链接(固定链接)时,不可避免的出现中文链接。在默认情况下,Wordpress博客不支持中文链接,文章中文链接打不开,中文标签Tags也会打不开,出现404错误。

文章中文链接打不开解决办法

写博文时,对标题下面的永久连接(固定链接)自定义。比如博文《WordPress博客短的元说明问题解决报告》我就自定义成:meta-description-short-wordpress。花点心思构造永久连接有利于搜索引擎,也有利于用户体验。博文《五个生成WordPress永久链接、固定链接的参考》对大家或许有帮助。

一、Tags中文标签打不开解决办法

找到wp-includes文件夹的classes.php文件。使用“PATH_INFO”作为关键字搜索,定位到154行,注释掉此行,并加入相应代码,如下:

//$pathinfo = $_SERVER['PATH_INFO']; 支持gbk
$pathinfo = mb_convert_encoding($_SERVER['PATH_INFO'], "UTF-8", "GBK");

使用“REQUEST_URI”为关键字搜索定位到160行,注释掉,加入相应代码,如下:

//$req_uri = $_SERVER['REQUEST_URI']; 支持gbk
$req_uri = mb_convert_encoding($_SERVER['REQUEST_URI'], "UTF-8", "GBK");

二、Tags中文标签分页打不开解决办法

我使用的是WP-PageNavi 版本 2.73插件,中文标签Tags分页无法打开的话,可以通过下面办法解决:

1、找到wp-content/plugins/wp-pagenavi下的core.php第153行,修改成下面代码。保存后,二进制方式上传到服务器。中文标签分页就可以打开了。如果你的插件是以前的版本,请更新插件,或参考《解决wp-pagenavi不支持中文Tags分页问题

return "<a href='" . esc_url( mb_convert_encoding(get_pagenum_link($page), "UTF-8", "GBK") ) . "' class='$class'>$text</a>";

2、给每一个中文标签添加缩略名,避免中文出现。缩略名是名称的链接友好形式,它通常全部由小写字母、数字和连字符组成。

后记

1、2011年8月12日07:05分,进行了排版和修改。

2、关于中文标签分页无法打开,此文解决不掉您的问题,这里有WP-PageNavi 2.74的解决办法,请移步:WordPress中文标签Tags分页打不开解决办法

  1. July 21st, 2013 at 23:08 | #1

    不行啊,3.52版本

  2. December 17th, 2011 at 13:54 | #2

    求哥们博客的高亮代码的插件,希望能给我发一份wangarchy@126.com

    看你的插件像是SyntaxHighlighter Evolved,但上面有多了查看源码和剪贴的功能,很希望希望能分享下

  3. August 11th, 2011 at 15:24 | #3

    @周秀才 请说的详细一点,中文标签链接无法打开,还是其他?或许你的wordpress版本比较新,可以参考:wordpress 3.2.1中文地址乱码、中文标签乱码无法打开(在文章后半部分)。

    @广州seo 看你的是怎么个乱法,比如:“wordpress%E6%95%99%E7%A8%8B” 和 “wordpress教程”是一个意思,不能称为乱码。这个是URL编码,浏览器和搜索引擎可以识别。看你的留言,我更倾向于这个说法。

  4. 周秀才
    August 11th, 2011 at 13:46 | #4

    老乡好 中文标签问题还是没有解决 需要该的地方该了还是不可以,还需要安装别的插件吗?

  5. 广州seo
    August 3rd, 2011 at 10:24 | #5

    打开中文tag,地址栏显示乱码怎么办?

  6. June 1st, 2011 at 13:25 | #6

    说的很详细了,赞一个。

  7. April 14th, 2011 at 15:15 | #7

    LZ讲的很好 很生动,学习了。

Comment pages
1 2 1420
  1. January 13th, 2011 at 20:07 | #1

    [...] 如果是乱码记得把你的文件保存为UTF-8格式——乱码解决说明。 [...]

  2. July 30th, 2011 at 10:09 | #2

    [...] 注意:wordpress 3.2.1修改的文件是wp-includes下的class-wp.php;如果您是以前版本,则需要修改classes.php,详情请参考《wordpress乱码、中文链接问题集锦》后半部分。 分类: 站长手札标签: wordpresswordpress3.2.1wordpress升级wordpress更新 评论 (0)Trackbacks (0) 发表评论 Trackback [...]

  3. September 1st, 2011 at 20:00 | #3

    [...] 使用一时,如果是在后台编辑的保存即可;如果是本地修改在上传,务必以UTF-8格式保存,并使用二进制方式FTP上传,不然出现Wordpress乱码。 [...]

  4. April 19th, 2013 at 10:51 | #4

    [...] 如果是乱码记得把你的文件保存为UTF-8格式——乱码解决说明。 [...]

  5. June 9th, 2013 at 14:59 | #5

    [...] 开始之前,准备好FTP软件,上传下载服务器文件时要用到;文本或网页编辑软件,推荐Editplus或Dreamweaver,编辑文件要用到。在编辑过程中如出现乱码,请参考WordPress乱码解决办法搞定。 [...]

  6. January 4th, 2014 at 17:39 | #6

    [...] wordpress乱码、wp中文链接打不开解决办法 禁止WordPress自动将半角标点符号替换为全角 关于WP 3.0 [...]

  7. February 21st, 2014 at 00:26 | #7

    [...] wordpress乱码、wp中文链接打不开解决办法 [...]

  8. March 4th, 2014 at 10:24 | #8

    […] WordPress更新到3.8.1版本后,一如既往地出现了中文地址和中文Tags标签打不开的问题。因为版本跨度大内核文件大换血,博客里老的中文链接无法打开的解决办法已不适用了。 研究了一会发现下面办法可以解决Wordpress更新到3.8.1后出现的中文地址无法打开,中文Tags无法打开的问题。 […]

www.Laifu168.com www.bjgdnet.com www.fsyushengqiye.com