Philna2 搜索中文乱码的解决

Philna2就是我目前正在使用的这款很棒的WP主题,之前换上这款皮肤的时候已经为大家介绍过作者的用心良苦及皮肤的优秀。很是喜欢,在一天一歌小朋友的推荐下,我选择了这款皮肤。

同样,也是一天一歌小朋友告诉我,最新的这款皮肤是有一个问题的——在右侧搜索框里输入中文,显示结果页面会把输入的内容变成神奇的乱码,而导致无法正常查询。而作者现在正处于人生的关键期——考研,貌似也没有时间来维护这个主题。但是不管怎么说,我们要祝福这位作者,走过独木桥,成为最后的胜利者。

所以这里,就简单的提供一种方法来解决此问题,读者勿怪,原作者勿怪。

问题描述:

这款皮肤使用了大量的AJAX效果,使用户不用受到地址栏跳转的干扰,而仅仅是局部更新。但是这样也就导致了问题的原因所在:AJAX提交中文的时候,如果不做编码处理的话是会产生乱码的。

查看作者原代码,发现确实是没有做编码处理,这样提交过去的中文是有问题的。

不过有些莫名其妙,因为我全站都是采用UTF-8编码的,正常同一编码下是不会产生乱码的,但是这样还不行,就有些不知所以然了,但是最后总归是解决了问题。我也就懒的查真正的原因了。怎一个懒字了得,没办法,天生的。

解决办法:

刚看作者的JS时候,几乎吐血。原来作者为了考虑增加js下载速度。把js文件进行了压缩处理,这样我看到的就类似于一堆乱码了。于是乎,解码,用YSLOW提供的工具来把压缩过的代码变成可读的,最起码不伤眼睛的。呵。

转义过来后,我们在提交查询的语句之前把把查询的内容转成16进制,这样传递给php的时候,我们是不用做任何操作的。所以我们采用encodeURIComponent函数,方便啊。

将js还原回去:

既然作者为我们把js文件进行了压缩,我们怎么也不能辜负作者的一片心意。我们把改后的js再压缩回去。但是用yslow或者是Closure Compiler都没有作者压缩的风格好。那可是完全看不懂的。

于是上网上搜索,别说,还真让我找到了作者是采用什么压缩工具进行压缩的。那就是:JSA

下载地址:

到这里,问题已经解决了,那么我就把压缩前和压缩后的分别提供给大家吧。爱用哪个您随意。解压后。请将其替换themes\philna2\js下的philna2.js。

扩展学习:

关于Ajax中文乱码的问题,大家还可以看一下网上的资源,蛮丰富的。和PHP,JS有关的我挑了两个放在这里,方便他人,方便自己。

2009年11月27日
首页 > wordpress > Philna2 搜索中文乱码的解决

相关文章

评论 ( 10 )
  1. 一天一歌 2009年11月27日 10:11  | #1 沙发!

    小子你动手能力太强了,我就直接拿来主义了 :mrgreen:
    还有出现我的名字怎么不加链接呢 :twisted:

  2. simaopig 2009年11月27日 10:41  | #2 板凳

    @一天一歌
    呃,大侠。我忘了。。这就加上。。息怒,息怒 :evil:

  3. 一天一歌 2009年11月29日 07:17  | #3

    @simaopig
    哈哈,我是来验收的,这才符合国际惯例嘛 :mrgreen:

  4. 掌柜的马甲 2009年11月29日 08:44  | #4

    我测试的时候怎么没出现乱码呢?

  5. simaopig 2009年11月29日 10:46  | #5

    @掌柜的马甲
    IE是有问题的。FF我不清楚,但是CHROME是没有事的。呵呵。

  6. 掌柜的马甲 2009年11月30日 04:07  | #6

    @simaopig
    原来是这样,我用的是FF没问题…

  7. 荒野无灯 2009年11月30日 16:01  | #7

    google music 我也一直挺喜欢的 :mrgreen:

  8. 荒野无灯 2009年11月30日 16:03  | #8

    晕,刚才用google app proxy 爬墙,提交评论失败,结果把上一篇的论坛在这里输入了一遍。。。。。

  9. xiaoding 2010年1月12日 18:51  | #9

    你这套表情不错~~ 在哪里有得下载?
    另外yinheli的原版主题评论框这里不是横版的么 现在被你改过了?

  10. simaopig 2010年1月13日 01:28  | #10

    @xiaoding
    我这个版下载下来就是这样的。没动过。呵。

    表情你有需要吗?如果有的话我发你邮箱里。嗯。 :mrgreen:

 ;-) :| :x :twisted: :smile: :shock: :sad: :roll: :razz: :oops: :o :mrgreen: :lol: :idea: :grin: :evil: :cry: :cool: :arrow: :???: :?: :!:
容许使用的 HTML 标签: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>
Trackbacks & Pingbacks ( 0 )