我正在尝试在一个页面上设置多个循环。第一个循环将显示最新的四篇博客文章,下面的第二个循环将显示最新的八篇带有分页的博客文章。
我在下面设置了模板,但只显示了前四篇博客文章。理想情况下,第一个循环将显示四篇博客文章,然后相同的四篇将显示在其正下方的第二个循环中。我误解了什么吗?有人能帮我找出哪里出了错吗?
<?php get_header();?>
<div id="content">
<h2>Latest News</h2>
<div id="latest-news">
<?php
$featuredPosts = new WP_Query();
$featuredPosts->query(\'showposts=4\');
while ($featuredPosts->have_posts()) : $featuredPosts->the_post();
?>
<div class="post" id="post-<?php the_ID(); ?>">
<div class="description">
<h3><?php the_title_attribute(); ?></h3>
<p><?php the_content_rss(\'\', TRUE, \'\', 20); ?></p>
</div>
</div>
<?php endwhile; ?>
</div>
<div id="blog-list">
<?php query_posts( array(
\'posts_per_page\' => 8,
\'paged\' => ( get_query_var(\'paged\') ? get_query_var(\'paged\') : 1 ),
));
?>
</div>
</div>
<?php get_footer(); ?>
最合适的回答,由SO网友:Michael 整理而成
将循环代码添加到query\\u posts部分;
示例:
<div id="blog-list">
<?php query_posts( array(
\'posts_per_page\' => 8,
\'paged\' => ( get_query_var(\'paged\') ? get_query_var(\'paged\') : 1 ),
));
if( have_posts() ) : while( have_posts() ) : the_post(); ?>
<div class="post" id="post-<?php the_ID(); ?>">
<div class="description">
<h3><?php the_title_attribute(); ?></h3>
<p><?php the_content_rss(\'\', TRUE, \'\', 20); ?></p>
</div>
</div>
<?php endwhile;
else : echo \'nothing found\';
endif; ?>
</div>