无限的wordpress循环

时间:2012-10-29 20:31:37

标签: 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-->

1 个答案:

答案 0 :(得分: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()

也很重要