我听到很多人的抱怨,WordPress 效率很低,废话,WordPress 接口的开放必然就会造成效率有些低,然后你又装个30多个插件,效率不低才怪呢。但是有些插件是必须有的,那怎么办呢?如果你懂 PHP 的话,其实还有办法提供速度的,下面我提供一些我的方法: 安装你的确需要的插件: 首先,你需要明白一点,WordPress 是个博客程序,它的作用是给你写博客,而不是给你用来玩博客插件,而是给你书写你自己擅长方面的文章,所以不用在你的博客上放个播放器,没有人回到你博客上听歌,也不用在你的博客放上花花草草,如果这样你还不如去用著名的“博客平台”:QZone 呢。你写博客最重要的是你的内容,人家来你的博客是因为你的内容,而决不会因为你装了什么插件。 选择最好的插件: WordPress 的同样功能的插件很多,但是有些插件的代码瓶颈可以造成整个 WordPress 效率的降低,比如我写的 WordPress 表情秀的以前的版本,在每次显示每条留言之前,插件都要去扫描下表情文件夹下面每个表情图片文件以获取表情信息,如果一共有 100 多个表情,显示每条留言它就循环 100 次,这样不慢才怪呢,而最近开发的版本,我就把所有的表情信息存储起来,这样大大加快了速度(自己广告下)。另外如我一直使用的 Popularity Contest 这个插件,这个是非常好的插件,但是它一个很大的问题是对数据库操作实在太多了,因为要统计一篇日志在 single category archive home feed 等下的被阅读的次数,其实个人觉得只有在 single 下阅读次数是最重要的,如果要求提供 WordPress 运行效率的情况下,最好转换到 PostViews 这个插件。关于如何把 Popularity Contest 中的数据转换到 PostViews 中,我会在以后的文章中说明。 舍弃后台选项 我相信你使用的插件都有一个后台选项,先谈谈这个选项功能是怎么运作的,你更新选项的时候,插件就会把选项的值存储到数据库的 Option 的表里面,然后调用插件的时候,就会到数据库中调用出来,这样对于一个选项,就会有一次数据库调用,如果选项多的话,对 WordPress 效率是有一定的影响的,如果很多插件都有选项,这个时候加起来其实蛮多的数据库调用,对 WordPress 效率影响是蛮大的。很多插件是是为了适应不同情况下的配置使用,才会有后台选项的,并且在插件里面添加很多判断来使得插件能够适应各种情况,这是一个通用的插件的要求。但是具体到个人,你的选项确定之后其实就不会再作修改了,这个时候如果你懂 PHP,个人建议尽量对插件做些修改!把后台选项删除了,把选项的值直接写到插件中,然后取掉一些判断,直接选择符合你的条件。 缓存+定时更新 其实很多插件调用的时候会有很多的数据库调用的,为了提高效率,其实你可以把结果缓存起来,然后再定时更新这个结果,关于这方面的内容,我在自己动手写 WordPress 插件:使用 WP-Cron 中已经讲解得很清楚了,这里不再重复了。 […]
运行

检测 WordPress 运行效率的插件:WPJAM Debug
很多同学都说 WordPress 的效率很低,但是又说不出哪里效率低,于是我就写一个 WPJAM Debug 插件,帮你检测 WordPress 的效率。 WPJAM Debug 的功能很简单,在当前页面加上 ?debug 的 query string,然后页脚就会显示当前页面有多少条 SQL 查询,页面生成花了多少时间,并且把 SQL 按照执行顺序和按照耗时列出。 WPJAM 安装和使用很简单,购买之后,解压缩上传到插件目录,然后激活即可。然后在要检测的页面后面加上 ?debug 的 query string 即可,比如:http://wpjam.net/item/wpjam-debug/?debug,就能在页脚看到类似的上图的输出结果。 注意这个是一个面向 WordPress 开发者的插件,并且只是用于在 WordPress 优化时候进行性能和效率检测,真正的优化还需要你自己进行,但是这个插件能够提供很多有益的参考。 购买:http://wpjam.net/item/wpjam-debug/ 标签:WordPress 插件
WordPress 技巧:清理选项设置,加速博客运行效率
当我们开始使用 WordPress,肯定会试着去装一些插件,然后觉得一些插件没用或者不适合自己了,就卸载了。但是由于一些 WordPress 插件写的不规范或者考虑的不全面,会在系统中留下一些使用的痕迹,所以 WordPress 会越用会越慢。 其中相当一部分痕迹是插件将选项写到了 WordPress Options 表中,卸载的时候并没有删除这些选项,而 WordPress 在运行的时候,会把所有的 autoload 为 yes 的选项都导入,所以这样就会造成了 WordPress 效率降低。 查看 WordPress 博客中所有选项设置 在 WordPress 中,我们是可以快速查看到所有博客选项设置,包括已经卸载了的插件留下的。通过这个 url 就可以查看到所有选项设置:http://你博客安装 URL/wp-admin/options.php,并且还能修改设置,不过有些数据是以序列化形式保存的(比如一些复杂的设置以一个数组存到选项中),这些选项就无法修改。但是这个页面并没有提供让我们删除没用的选项的链接,通过这个页面获取无用的选项之后,我们可以直接使用 PHPMyAdmin 到数据库中去删除它们。 使用插件清理 WordPress 中没用的选项设置 如果你觉得手工在 PHPMyAdmin 删除这些选项风险太大,毕竟有很多选项是 WordPress 自带,有时还是比较难以判断的,那么我们可以通过插件来进行清理: Clean Options Clean Options 可以查找 wp_options 表中废弃的选项,它通过 get_option 和 get_settings 这两个函数来检查那些选项是博客中真正用到的,这样保证了我们不会删除那些当前博客运行真正需要的选贤。并且这个插件还提供了链接让你去 Google 上搜索下选项。 WP-Options-Manager WP-Options-Manager 这个插件可以让你浏览,删除和 debug 博客的选项,并且它会自动被隐藏 […]
Android示例程序Snake贪食蛇代码分析(三) Android开发技术
今天我们分析下最复杂的SnakeView的设计,它是派生于TileView方砖类,TileView构建是基于Android直接的显示类View,如果不明白的可以查看Android示例程序Snake贪食蛇代码分析(二)一文有关TileView类的实现, 首先我们看到整个游戏分 READY、PAUSE 、RUNNING 、LOSE四种mMode状态模式,分别对应准备、暂停、运行中、结束(死亡),毕竟贪食蛇没有胜利这个结果。 整个Snake的运行分4个方向,NORTH、SOUTH 、EAST、WEST分别对应了北、南、东、西四个方向,其中变量mDirection对应当前的方向,而mNextDirection对应下个运行时的位置。这里星星分3种,使用的是一个Drawable图片,分RED_STAR、YELLOW_STAR和GREEN_STAR三种颜色,游戏的星星出现位置由Random随机数生成器来决定,这里Random一般和Timer系统时钟来随机生成更真实一些,通过一个Handler对象来控制画面的更新,使用了this.update();和this.invalidate();这两个本地方法,Update和invaildate均为android.view.View类的本地方法。这里资源的使用通过Resources r = this.getContext().getResources();获取了r对象的实例,通过r.getDrawable(R.drawable.redstar)获取资源名为redstar的资源,返回的是一个Drawable对象。 对于按键信息,直接重写View类的onKeyDown方法,这里KeyEvent传递的是按键的映射,比如KEYCODE_DPAD_UP向上,KeyEvent.KEYCODE_DPAD_DOWN向下等等,详细的查看SDK中的onKeyDown @Override public boolean onKeyDown(int keyCode, KeyEvent msg) { if (keyCode == KeyEvent.KEYCODE_DPAD_UP) {} } 整个游戏的控制流程就是上面这些,对于游戏的逻辑而言比较简单,这个贪食蛇并没有包含3D设计和类似Nokia的能量走廊、6边形轨迹,有空了我们一起来完善一个3D的贪食蛇游戏。
Android开发环境搭建图文教程 Android开发技术
Android开发首先需要搭建完整的开发环境,由于软件均是基于Dalvik Java Virtual Machine运行的所以Google官方推荐使用主流的Java开发IDE Eclipse。我们需要下载必要的开发组件。 1)Java运行时库(JRE),由于Eclipse使用Java开发,所以需要它才可以正常运行IDE。 2)Eclipse集成开发环境,官方提供的Android开发插件ADT Plugin是基于Eclipse编写的,当然用户可以使用NetBean、JBuilder当作代码编辑器使用,但目前没有完整的调试集成。 3)Eclipse ADT Plugin插件是Android Develop Tool Kit的插件,用户需要安装它才能在Eclipse中建立和调试Android程序。 4)Android SDK,它包含了完整的Android模拟器 、Android开发文档和调试工具,Google官方也会定时更新,最新的公开版本为2008-3-3 m5-rc15 以上提到的4个必备工具需要在下面页面中下载安装 Android开发包下载 首先我们将下载的JRE安装,然后解压缩Eclipse和Android SDK。运行Eclipse开发环境。

