给WordPress主题添加文件校验和替换smilies表情功能

10
460

把WordPress升级到了3.3,同时主题也整合了一些插件,整合完插件之后,又弄了个主题自校验和复制自定义表情图像到默认的wp-includes/images/smilies。因为WordPress自带动表情特难看,所以果断替换,而每次升级主题就要手动上传覆盖,每次升级感觉特麻烦,于是来了个半自动,只要一个按钮,就可以轻松替换原有的自带表情。

主题文件校验

原理是在主题目录建立一个files.sum文件,此文件包含主题所有文件的md5值,自校验就是通过读取该文件与每个文件对比md5值,如果修改或者已经删除,则给出相应的提示。

file-checksum

file-checksum-notify

这个只是一个例子,对于更多的功能可以自己发挥了,譬如我之前所写的增加站点维护提示,就可以给这个一个拓展,我们可以验证主题文件是否被修改(被社工hack),如果修改则增加站点维护提示,而避免其他的显示信息,当然你也可以给全站增加md5文件验证,只要任何一个文件有个变动,你也可以了若指掌,其实建议对于重要的目录验证,如果对于全站验证,相信没几天你的主机商就会警告你,CPU长时间占用过多。至于对全站自校验所占用的cpu和内存还不得而知,如果进行了全站自校验,可以来个反馈。

替换自带表情

替换自带表情的前提是主题文件里包含一个smilies的表情文件夹,为什么不直接引用主题文件夹里面的表情,非要折腾一圈要用wp-includes/images/smilies这个我还没有研究过,记得之前调用愣是没把主题文件下smilies的表情路径弄对,所以至今每次升级就覆盖wp-includes/images/smilies的表情,从而达到替换的效果。

额外说明

此操作要有一点基本的php知识,其中验证的class是来自一个老外的主题,xcopy则借鉴了网上的方法,因为php只支持单个文件拷贝,而对目录则会提示错误。我是将这个功能整合到了主题选项里面,而下面的则是一个UI界面checksum.php和一个所需要调用的类checksum-class.php。

File:checksum.php

File:checksum-class.php

10 条留言

    • 首先,我的链接怎么从你的上消失了?我也没问啥原因,就把你的也删了,有啥误解? ➡ 你说显示有问题,我特地装了个maxthon测试了下,没问题。我主题实在firefox,chrome,opera及IE9测试出来的,在这几个浏览器显示正常。

      • 没有什么误解,我们的交流也少。我删你链的那时,是你博客不能访问了,私密了。今天也在处理友链,就过来看看了。发现你还是挺多更新的。可能大家对相互的内容都不感兴趣了,也没什么。有空我还是会来逛逛的。
        我用的是CHROME,图片不能都在文章内显示,会越到侧边栏去。

留言

留言不能为空
怎么称呼您?

验证码 *