WP_QUERY帮助-MySQL查询太多

时间:2012-10-29 作者:Dusan

我需要一些帮助wp_query. 我做错什么了吗?在构建新主题的同时,我得到了很多mySQL查询。

我的WP\\U查询是:

<?php
 $args = array(
   \'post_type\' => \'items\',
   \'order\' => \'ASC\',
\'posts_per_page\' => 4,
 ); ?>

<ul>
<?php $lastitems = new WP_Query( $args);
while ( $lastitems -> have_posts() ) : $lastitems -> the_post();?>
    <li>
    <a href="<?php the_permalink(); ?>" title="<?php the_title_attribute(); ?>"><?php the_title(); ?></a></h2>
    <a href="<?php the_permalink(); ?>" title="<?php the_title_attribute(); ?>"><?php the_post_thumbnail(\'thumbnail\', array(\'title\' => get_the_title())); ?></a>
    Posted: <?php the_time(\'d M, Y\'); ?>  <a href="<?php the_permalink(); ?>" title="<?php the_title_attribute(); ?>"></a>
    </li>
                                    <?php endwhile; ?>
</ul>
Link to pastie.

对于这个WP\\u查询,每个检索到的关于post的信息,我会收到5-7个mySQL查询。

例如,如果我把posts_per_page\' => 1 如果我把posts_per_page\' => 2 我将得到21个mySQL查询,其中3个是28个,10篇文章中,仅针对列表的查询大约是60-70个,总共大约是90个mySQL查询,等等。。

我觉得这有点太过分了。

而且get_posts 使用相同的wp_query, 所以这没用。你知道如何最小化mySQL查询的数量,或者如何修复我的wp_query 如果我写错了。

谢谢

杜赞

1 个回复
SO网友:Wyck

您的查询没有问题,这对于WordPress来说是正常的。

通常更重要的是“总查询时间”。一个写得很好的主题,有100多个查询,通常会在20毫秒以下响起,这比眨眼的速度快4-20倍。使用缓存插件,您可以进一步大大减少这种情况。

如果您真的想优化,我建议您打开调试(使用调试栏)并检查每个SQL查询,看看是否有任何可以删除的漏洞,尤其是您有很多侧栏/小部件和多个循环。

结束

相关推荐

Mysqldump add drop table?

我注意到在Codex中显示了用于备份数据库的--add drop table选项。在我搞砸之前,这是否意味着在最终导入备份时,如果目标数据库中存在这些表,它们将被覆盖?我不想在备份桌子时把它们弄掉!user@linux:~/files/blog> mysqldump --add-drop-table -h mysqlhostserver -u mysqlusername -p databasename (tablename tablename tablename) | bzip2