我有3个div,WP\\u使用3个不同的类别进行查询,并以php endwhile结束,但它只显示了三次相同的最新post查询。我是否需要以某种方式硬重置查询循环?我想看看wp\\U reset\\U postdata放在哪里。。。
<div>
<?php $test = new WP_Query(\'category=[errands]&showposts=1\');
while ($test->have_posts()) : $test->the_post(); ?>
<h2><?php the_title(); ?></h2>
<img src="<?php bloginfo(\'template_directory\'); ?>/images/errands.jpg" />
<?php the_content(__(\'Read more\'));?>
<?php endwhile;?>
<?php wp_reset_postdata(); ?>
</div>
<div>
<?php $test2 = new WP_Query(\'category=[shopping]&showposts=1\');
while ($test2->have_posts()) : $test2->the_post(); ?>
<h2><?php the_title(); ?></h2>
<img src="<?php bloginfo(\'template_directory\'); ?>/images/shopping.jpg" />
<?php the_content(__(\'Read more\'));?>
<?php endwhile;?>
<?php wp_reset_postdata(); ?>
</div>
<div>
<?php $test3 = new WP_Query(\'category=[calendar_maintenance]&showposts=1\');
while ($test3->have_posts()) : $test3->the_post(); ?>
<h2><?php the_title(); ?></h2>
<img src="<?php bloginfo(\'template_directory\'); ?>/images/calendar.jpg" />
<?php the_content(__(\'Read more\'));?>
<?php endwhile;?>
<?php wp_reset_postdata(); ?>
</div>
最合适的回答,由SO网友:user48752 整理而成
如果你希望你的帖子基于不同的类别,你应该使用category_name
或cat
作为类别id。例如;
<?php $test = new WP_Query(\'cat=1&showposts=1\'); // where 1 is the id of your cat ?>
或
<?php $test = new WP_Query(\'category_name=errands&showposts=1\'); ?>
还有,你需要打电话
wp_reset_postdata();
每次之后
WP_Query
. 我希望这有帮助
有关如何在中使用类别的详细信息WP_Query
http://codex.wordpress.org/Class_Reference/WP_Query