WordPress默认使用了Gravatar头像,但由于我们身处伟大的兲朝,又有强大的GFW,导致Gravatar的服务器经常连不上,头像获取失败。
Gravatar默认头像。如果无法显示,那么很荣幸,您八成被墙了。
为了优化页面加载速度,想对Gravatar头像进行本地缓存,百度一下发现方法不少,大部分是依靠修改主题模板的functions.php文件实现的,于是尝试之,果断悲剧了
管理工具栏乱版,可以看到Malash明显位置偏上了
管理界面侧边栏乱版
各种调试都没用处,无奈,只能恢复。用Beyond Compare 3(一款很好用的文件比较器,有30天免费试用)比较functions.php发现新旧没有区别,但乱版问题依然存在
文本方式比较functions.php的结果,两文件没有区别,继续用16进制方式比较
16进制方式比较functions.php的结果,问题出现了
EF BB BF是个神马东东?
这篇日志做出了解释:
微软在自己的UTF-8格式的文本文件之前加上了EF BB BF三个字节,windows上面的notepad等程序就是根据这三个字节来确定一个文本文件是ASCII的还是UTF-8的,然而这个只是微软暗自作的标记,其它平台上并没有对UTF-8文本文件做个这样的标记。
EF BB BF是微软在文本文件开头加的UTF8字节序标记
而我正是用的Windows自带的notepad(俗称记事本)对functions.php进行编辑,于是被加上了EF BB BF,但PHP显然不支持微软“独具匠心”的设计,于是乱版了(浏览器不同效果也可能不同)。这篇文章也对此问题做出了解释。
原因找到了,解决办法就很显然了。可以使用EditPlus或者UltraEdit-32进行编辑,也可以使用WinHex手动删除EF BB BF。
不过,更好的解决办法是,使用WordPress管理面板自带的文件编辑器。
BOM的确是一个问题,Dreamweaver生成的UTF8编码文件是无BOM的。其实没有必要如此麻烦,使用Notepad++,一键就解决啦。http://www.buicaa.com/1003/