11月 10th, 2008

WordPress执行效率优化分析

Category: 网站优化, WordPress, Author: admin, Popularity: 10%

1>统计WordPress数据查询次数

在模板文件footer.php中加入以下代码,用来显示该页面的数据库查询次数和运行的时间。
<?php echo get_num_queries(); ?> queries. <?php timer_stop(1); ?> seconds.
从中找出数据库的查询次数多和运行时间长的页面。

2>进一步分析具体那些函数或插件在消耗这些数据库查询

首先,先用文本编辑器打开wp-config.php,加入如下代码:
define(‘SAVEQUERIES’, true);

此行代码,将激活WordPress把每次数据查询的信息保存到数组内。数组具体包含三项内容:各次数据库查询的SQL代码,读取所消耗时间和执行数据库查询的函数名称。

其次,在模板footer.php的</body>标签前加入下面代码

if (is_user_logged_in()){
global $wpdb;
echo “<pre>”;
print_r($wpdb->queries);
echo “</pre>”;
}

上述代码将数组内的各次数据库查询的信息显示出来。

is_user_logged_in() 用于判断当前用户是否是注册用户,这样普通浏览者就不会看见这些分析结果。

变量$wpdb是WordPress默认的数据库类。

$wpdb->queries是一个多维数组

第二维的每个数组里面包含3组信息,
[0]数据库查询所用的SQL代码,
[1]SQL查询所消耗的时间
[2]执行该次数据库查询的函数名称。

print_r($wpdb->queries)将那些函数或插件在消耗这些数据库查询的详细信息显示出来。

注意: 在分析前一定要关闭wp-cache插件,否则分析测试的结果会不准确

相关日志

Tags:, , , .
评论数量() | Add Comments
本文网址:http://www.9usb.net/200811/wordpress-xiaolv-youhua.html

4 Comments so far

» You can leave a response

  1. Gravatar Icon Eden Says:

    兄台是研究什么的?

  2. Gravatar Icon icybeta Says:

    呵呵,对Wordpress这么有研究啊,你的日志上的那个 Popularity: 是如何弄的呢?请教下

  3. Gravatar Icon admin Says:

    我是搞软件开发的

  4. Gravatar Icon admin Says:

    日志上的那个 Popularity是通过安装了Popularity Contest插件来实现的

leave a reply