输入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数据库查询的具体内容 减少数据库查询次数》的一些看法。更多内容请查看本栏目更多内容!

本文相关话题: 数据库查询 WordPress
版权声明:本文为 安达网络工作室 转载文章,如有侵权请联系我们及时删除。
相关文章
wordpress博客多站点获取以后博客信息示例

首先,什么是以后博客?和独自站点不同的是,Multisite会产生多个博客,称之为blog,即子站点(包括主站点)...

详解WordPress中调用评论模板和循环输入评论的PHP函数

comments_template comments_template 函数是一个调用评论模板的函数,应用起来很简略,与get_header()等函...

封闭WordPress主动保留和文章修订性能

明天发文章时,惊奇的发现文章的ID居然曾经抵达了19了。鉴于我以前折腾Wordpress的经历,我晓得这是Wordpre...

WordPress中获取所应用的模板的页面ID的简略办法

什么是模板呢?默许状况 WordPress是应用主标题录下page.php来作为模板显示页面的,然而有时分咱们需求不同...

wordpress固定链接翻译插件 主动将题目翻译成英文

wpslugtranslate插件引见: 经过该插件,能够让wordpress中文博客的博主应用/%postname%.html方式的固定链接...

基于wordpress主题制造的详细完成步骤

代码如下:<?php/*在根目录 -> wp-content -> themes 下创立mytheme文件夹用来寄存创立新主题模板 在mythem...

需求提交

客服服务