0

某些事情正在导致我们的数据库发疯。连续进行这三个查询是否可能存在问题?

 <ul>
    <?php   
        query_posts(array('category__in'=>38082, 'order-by'=>'post_date','order'=>'DESC','posts_per_page'=>'5')); 
        while (have_posts()) : the_post();
    ?>              

    <li><a href="<?php the_permalink(); ?>"><?php echo the_title()?></a></li>

    <?php endwhile; ?>
    <?php wp_reset_query();?>
 </ul>

 <ul>
    <?php   
        query_posts(array('category__in'=>1, 'order-by'=>'post_date','order'=>'DESC','posts_per_page'=>'5')); 
        while (have_posts()) : the_post();
    ?>              

    <li><a href="<?php the_permalink(); ?>"><?php echo the_title()?></a></li>

    <?php endwhile; ?>
    <?php wp_reset_query();?>
 </ul>      

 <ul>
    <?php   
        query_posts(array('category__in'=>15, 'order-by'=>'post_date','order'=>'DESC','posts_per_page'=>'5')); 
        while (have_posts()) : the_post();
    ?>              

    <li><a href="<?php the_permalink(); ?>"><?php echo the_title()?></a></li>

    <?php endwhile; ?>
    <?php wp_reset_query();?>
 </ul>
4

2 回答 2

1

query_posts() 不是最有效的方法。

首先,尝试注释掉该代码以确保重负载不在其他地方。

确认问题仍然存在后,尝试从 query_posts() 切换到 get_posts()。我还注意到您将每页的帖子数作为字符串而不是数字。

之后,单个列将如下所示:

<ul>
    <?php   
    $posts=get_posts( array('cat'=>38082, 'numberposts'=>5)); 
    foreach($posts as $post){ ?>              

        <li><a href="<?php echo get_permalink($post->ID); ?>"><?php echo $post->post_title;?></a></li>

    <?php } ?>
 </ul>

希望能帮助到你!

于 2012-09-26T00:06:44.690 回答
1

第一个类别 ID 是真实的吗?此外,如果您运行太多查询,我在那里看到三个,并且在每个类别中都有大量帖子,这可能会导致疯狂的行为。

于 2012-09-25T23:06:50.820 回答