输出WordPress数据库查询的具体内容 减少数据库查询次数

输出WordPress数据库查询的具体内容 减少数据库查询次数,第1张

输出WordPress数据库查询的具体内容减少数据库查询次数

最近做了一个wordpress企业模板,注意查询次数!数据展示首页被查询30次,日志页面被查询45次。。。太无聊了。为了更好地查询数据库实际查询的内容,我谷歌了一下,得到了以下解决方案,这里总结一下。

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

在footer.php里加上了以下编码,以显示信息wordpress查询数据库查询次数及查询用时:

<?phpechoget_num_queries().'queriesin'.timer_stop(0).'seconds.';?>

数据显示主页查询三十次,日志页查询达45次。。。简直烦闷,为了更好地查询实际查询了数据库查询什么內容,Google了一下,获得以下解决方案,这儿汇总出去:

最先在wp-config.php里加上以下编码:

define('SAVEQUERIES',true);

随后在footer.php里加上以下编码:

复制代码编码以下:
<?phpif(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]=>SELECTSQL_CALC_FOUND_ROWSwp_posts.*FROMwp_postsWHERE1=1ANDwp_posts.post_type='post'AND(wp_posts.post_status='publish'ORwp_posts.post_status='private')ORDERBYwp_posts.post_dateDESCLIMIT0,10
[1]=>0.0003960132598877
=>require,wp,WP->main,WP->query_posts,WP_Query->query,WP_Query->get_posts
)
[1]=>Array
(
[0]=>SELECToption_valueFROMwp_optionsWHEREoption_name='nuodou_header_code'LIMIT1
[1]=>0.0013589859008789
[2]=>require,require_once,include,get_header,locate_template,load_template,require_once,get_option
)

……下边的工作就得自身剖析了,看一下什么是能够删掉,什么是能够改善的!

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/zz/772613.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-05-03
下一篇2022-05-03

发表评论

登录后才能评论

评论列表(0条)

    保存