我想在Wordpress的“促销”页面上输出特定类别的每个帖子,目前我正在使用下面的代码但是我意识到这可能不是执行此过程的最佳方式想知道是否有人能提供更好的解决方案?
PHP
<?php
query_posts('cat=Promotions');
while (have_posts()) : the_post();
the_content();
endwhile;
?>
好的,我的最新尝试是:
<?php
$catquery = new WP_Query( 'category_name=Promotions' );
while($catquery->have_posts()) : $catquery->the_post();
?>
<?php the_content(); ?>
<?php endwhile; ?>
答案 0 :(得分:1)
如果您在该类别的存档页面上,则无需按名称查询类别。
例如,如果你试图在example.com/category/promotions/上调用这些帖子,那么你的category.php文件中只有一个标准循环,它应该可以正常工作。它看起来像这样:
<?php
if (have_posts()) :
while (have_posts()) :
the_post();
the_content();
endwhile;
endif;
?>
但是,如果您尝试从其他页面调用此循环,则必须使用query_posts覆盖当前查询,就像您已经完成的那样。那么你想要像这样重置查询:
<?php
query_posts('cat=Promotions');
if (have_posts()) :
while (have_posts()) :
the_post();
the_content();
endwhile;
endif;
wp_reset_query();
?>
无论你走到哪里,都没有“更快”的方式,这就是wordpress希望你使用的方式。