2012-10-29 95 views
0

我是Wordpress開發的新手。我有一個單一頁面的代碼,它只輸出無限循環中最新的帖子。隨着同一篇文章一次又一次地被調用,頁面不斷變得越來越長。我如何才能讓它按順序顯示所有帖子?無限wordpress循環

<?php 
/* 
* Template Name: Portfolio 
*/ 
?> 
    <?php include 'header.php'; ?> 

    <div id="content"> 
     <div id="content_inner"> 
      <!--start the loop --> 
      <?php if (have_posts()) : while (have_posts()) : the_post(); ?> 
       <!--get posts--> 
       <?php query_posts('cat=uncategorized') ?> 
       <!--display the content--> 
       <?php the_content(); ?> 
      <!--end the loop--> 
      <?php endwhile; else: ?> 
      <p><?php _e('Sorry, no posts matched your criteria.'); ?></p> 
      <?php endif; ?> 
     </div> 
    </div> 

    <?php include 'footer.php'; ?> 

    </div> <!--end allwrap--> 

回答

0

當您調用query_posts時,它將重新執行對數據庫的查詢。在你的循環中有這個是你的無限循環的原因。

您需要將以下行移至循環外部。

<?php query_posts('cat=uncategorized') ?>

這將使你是這樣的:

<!--get posts--> 
<?php query_posts('cat=uncategorized') ?> 
<?php if (have_posts()) : while (have_posts()) : the_post(); ?> 

      <!--display the content--> 
      <?php the_content(); ?> 
      <!--end the loop--> 
<?php endwhile; else: ?> 
      <p><?php _e('Sorry, no posts matched your criteria.'); ?></p> 
<?php endif; ?> 
<?php wp_reset_query(); ?> 

同樣重要的是增加wp_reset_query()