输出WordPress数据库查询的具体内容 减少数据库查询次数
时间:2022-01-20 04:12:40|来源:网络精心整理
这篇文章主要讲解的是输出WordPress数据库查询的具体内容 减少数据库查询次数,文章内容非常详细,相信一定可以解决你的问题,需要的朋友可以参考下哦
最近做一个wordpress的企业模板,关注了一下查询次数这个东西!在 footer.php 里添加了如下代码,以显示wordpress查询数据库次数及查询耗时:
<?php echo get_num_queries() . ' queries in ' . timer_stop(0) . ' seconds.'; ?>
结果显示首页查询30次,日志页查询达45次。。。真是郁闷,为了查看具体查询了数据库哪些内容,Google了一下,得到如下解决方法,这里总结出来:
首先在 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
)
……下面的活儿就得自己分析了,看看哪些是可以删除,哪些是可以改进的!
上一篇:wordpress强大的网站建设cformsII留言板插件
下一篇:the_time WordPress日期和时间调用函数
本文标题:输出WordPress数据库查询的具体内容 减少数据库查询次数
本文地址:https://www.tabangni.com/wordpress/25667.html
查看更多与“数据库查询 ”有关的文章
推荐阅读
最近更新
- 01-20输出WordPress数据库查询的具体内容 减少数据库查询次数
- 01-20站长叙述CSS3的新特性介绍
- 01-20老司机细说CSS实现背景图尺寸不随浏览器缩放而变化的两种方法
- 01-20图文普及js DIV滚动条随机位置的设置技巧
- 01-20小编阐明使用js操作cookie的一点小收获分享
- 01-20Ubuntu上安装MySQL+问题处理+安全优化
- 01-20站长讲解javascript 简练的几个函数
- 01-20老司机讲述使用js实现数据格式化
- 01-20主编学习ZeroClipboard.js使用一个flash复制多个文本框
- 01-20dw模板怎么制作?Dreamweaver制作网页模板的详细教程