WordPress主要提供了两个统计函数,然后在 footer.php 里添加如下代码

  • 栏目:编程 时间:2020-01-04 12:30
<返回列表

最近做一个wordpress的企业模板,关注了一下查询次数这个东西!

WordPress提供了一些功能函数可以轻松地显示数据库查询的统计信息,这些信息可以公开地显示在网页中,或者隐藏在源代码中,更或者只有你自己可以看到。

本文实例讲述了WordPress统计当前页面数据库查询次数及消耗时间的方法。分享给大家供大家参考。具体分析如下:

在 footer.php 里添加了如下代码,以显示wordpress查询数据库次数及查询耗时:

WordPress主要提供了两个统计函数:

在WordPress中可统计当前页面数据库查询次数及消耗时间我们可直接使用两个函数get_num_queries与timer_stop函数,这里我们举例说明如下:

结果显示首页查询30次,日志页查询达45次。。。真是郁闷,为了查看具体查询了数据库哪些内容,Google了一下,得到如下解决方法,这里总结出来:

1.网页加载时查询数据库的次数: <?php echo get_num_queries(); ?> 

1.网页加载时查询数据库的次数:
复制代码代码如下:

首先在 wp-config.php 里添加如下代码:

韦德体育 ,2.服务器端完成这些查询所花费的时间: <?php timer_stop(7); ?> 

2.服务器端完成这些查询所花费的时间:
复制代码代码如下:

define('SAVEQUERIES', true);

可以使用3种方式在网页中显示:

在 footer.php 合适位置添加了如下代码,以显示wordpress查询数据库次数及查询耗时

然后在 footer.php 里添加如下代码:

1. 公开地显示查询的统计信息:

如果你觉的你的服务器或空间的处理速度好,或者想让你的访问者看到这些查询统计信息的话,你可以将这些统计信息公开显示在页面中:(效果查看博客的页面底部)

<p>< ?php echo get_num_queries(); ?> queries in < ?php timer_stop(3); ?> seconds</p>

本页共执行
复制代码代码如下:次查询操作
耗时
复制代码代码如下:秒

复制代码代码如下:
global $wpdb;
echo "

2. 将统计信息显示在源代码中,而不出现页面的内容中:

如果你不想将统计信息显示在页面上供访问者查看,但又想自己可以知道这些统计信息,那么你可以通过html的注释将结果只显示在源代码中(PS:大家也可以从源代码中查看的哦!):

<!-- <?php echo get_num_queries(); ?> queries in < ?php timer_stop(3); ?> seconds -->

希望本文所述对大家的WordPress建站有所帮助。

"; 
print_r($wpdb->queries); 
echo "

3. 统计信息只有你自己登录了后可以看到:

该方法是第二种显示的优化方法,只需博客管理员登录后就可以查看查询统计信息,访问者是无法查看的:

<?php 
if (current_user_can('level_10'))
{
    echo '<!-- ' . get_num_queries() . ' queries in ' . timer_stop(3) . ' seconds -->';
}
?>

 

如果想查看具体查询了数据库哪些内容,可以用如下解决方法:

1、首先在 wp-config.php 里添加如下代码:

define('SAVEQUERIES', true);

然后在 footer.php 里添加如下代码:

<?php 
if (is_user_logged_in())
{
    global $wpdb;
    echo "<pre>";
    print_r($wpdb->queries);
    echo "</pre>";
}
?>

分析:

1、 if (is_user_logged_in())  用于判断当前访客是否已登录,也可以用  if (current_user_can('level_10'))  来判断是否为管理员登录,目的是为了不让游客查看到这些数据,此代码可省;

2、 global $wpdb;  定义全局变量 $wpdb ,这是Wordpress默认的数据库类;

3、 <pre></pre> 将结果嵌套在HTML标签 <pre> 内;

4、 print_r($wpdb->queries);  输出各次数据库查询的信息。

刷新首页或日志页,可看到类似如下的输出结果:

    Array
    (
        [0] => Array
            (
                [0] =>  SELECT SQL_CALC_FOUND_ROWS  wp_posts.* FROM wp_posts  WHERE 1=1  AND wp_posts.post_type = 'post' AND (wp_posts.post_status = 'publish' OR wp_posts.post_status = 'private')  ORDER BY wp_posts.post_date DESC LIMIT 0, 10
                [1] => 0.0003960132598877
                [2] => require, wp, WP->main, WP->query_posts, WP_Query->query, WP_Query->get_posts
            )

        [1] => Array
            (
                [0] => SELECT option_value FROM wp_options WHERE option_name = 'nuodou_header_code' LIMIT 1
                [1] => 0.0013589859008789
                [2] => require, require_once, include, get_header, locate_template, load_template, require_once, get_option
            )

下面的活儿就得自己分析了,看看哪些是可以删除,哪些是可以改进的,以减少数据库查询次数。

 

 

文章转载自:

";
} ?>分析:

1、if (is_user_logged_in()) 用于判断当前访客是否已登录,也可以用 if (current_user_can('level_10')) 来判断是否为管理员登录,目的是为了不让游客查看到这些数据,此代码可省;

2、global $wpdb; 定义全局变量$wpdb,这是Wordpress默认的数据库类;

3、

将结果嵌套在HTML标签

内; 

4、print_r($wpdb->queries); 输出各次数据库查询的信息。 

刷新首页或日志页,可看到类似如下的输出结果: 

复制代码代码如下: 
Array 
( 
[0] => Array 
( 
[0] => SELECT SQL_CALC_FOUND_ROWS wp_posts.* FROM wp_posts WHERE 1=1 AND wp_posts.post_type = 'post' AND (wp_posts.post_status = 'publish' OR wp_posts.post_status = 'private') ORDER BY wp_posts.post_date DESC LIMIT 0, 10 
[1] => 0.0003960132598877 
[2] => require, wp, WP->main, WP->query_posts, WP_Query->query, WP_Query->get_posts 
) 
[1] => Array 
( 
[0] => SELECT option_value FROM wp_options WHERE option_name = 'nuodou_header_code' LIMIT 1 
[1] => 0.0013589859008789 
[2] => require, require_once, include, get_header, locate_template, load_template, require_once, get_option 
) 

……下面的活儿就得自己分析了,看看哪些是可以删除,哪些是可以改进的!
上一篇:却未曾寻到三种方案合为一体的尝试,其实我个人并不是很喜欢这种摘要的显示方式 下一篇:wordpress显示当前文章同分类最新文章列表,在我的主题中有个名为Featured的分类名

更多阅读

wordpress显示当前文章同分类最新文章列表

编程 2020-01-04
因为用户寻找的是相关的文章,不相关的文章是没有多大兴趣看,博客吧认为这样也能提高P...
查看全文

WordPress主要提供了两个统计函数,然后在

编程 2020-01-04
最近做一个wordpress的企业模板,关注了一下查询次数这个东西! WordPress提供了一些功能函数可...
查看全文

先简单的介绍一下什么是主题,下创建

编程 2020-01-04
(如下图),官方的名称叫adminbar,中文我们就把它叫做管理工具栏吧,也有称之为管理工具条...
查看全文

友情链接: 网站地图

Copyright © 2015-2019 http://www.koi-bumi.com. 韦德体育有限公司 版权所有