WordPress 多循环
当我们在同一页面中有多个循环时,哪个是最佳解决方案?我正在使用这个主循环:
<?php if ( have_posts() ) : while ( have_posts() ) : the_post(); ?>
<?php endwhile; endif; ?>
现在我尝试在同一页面(不同位置)中为特定类别名称中的特色帖子添加一个新循环,这对您来说是最好的选择:(“内容”是仅作为示例)
1- 使用 get_posts();
<?php global $post;
$args = array( 'category_name' => 'destaques' );
$myposts = get_posts( $args );
foreach( $myposts as $post ) : setup_postdata($post); ?>
"content"
<?php endforeach; ?>
2-使用WP_Query();
<php $my_query = new WP_Query("category_name=destaques");
while ($my_query->have_posts()) : $my_query->the_post(); ?>
"content"
<?php endwhile; ?>
3:使用query_posts();
<?php query_posts( 'category_name=destaques' );
if (have_posts()) : while (have_posts()) : the_post(); ?>
"content"
<?php endwhile; endif; ?>
您选择哪一个以及为什么?
谢谢。
Which is the best solution when we have multiple loops in the same page? I am using for the main loop this:
<?php if ( have_posts() ) : while ( have_posts() ) : the_post(); ?>
<?php endwhile; endif; ?>
Now i am trying to add a new loop in the same page (in a different location) for featured posts in a specific category name, which is for you the best choice: ("content" is just for example)
1- Use get_posts();
<?php global $post;
$args = array( 'category_name' => 'destaques' );
$myposts = get_posts( $args );
foreach( $myposts as $post ) : setup_postdata($post); ?>
"content"
<?php endforeach; ?>
2- Use WP_Query();
<php $my_query = new WP_Query("category_name=destaques");
while ($my_query->have_posts()) : $my_query->the_post(); ?>
"content"
<?php endwhile; ?>
3: Use query_posts();
<?php query_posts( 'category_name=destaques' );
if (have_posts()) : while (have_posts()) : the_post(); ?>
"content"
<?php endwhile; endif; ?>
Which you choose and why?
Thanks.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
最佳选择是 get_posts();
以下是 Wordpress 函数参考中的推理查询帖子:
The optimal choice is get_posts();
Here is the reasoning from the Wordpress Function Reference for query posts:
我不确定其他人的情况,但我的选择通常是或不是,
这证明它可以很好地满足我的需求......
Im not sure about others but my choice is most often or not
this proves to work fine for my needs...
我会使用数字 3。它更容易阅读和理解。
I'd use number 3. It's easier to read and understand.