WordPress循环显示每个作者的1个帖子

时间:2010-08-21 21:34:01

标签: wordpress loops

我在博客上有几位作者,在主页(index.php)上我想查询帖子,以便它只显示每位作者的最新帖子。所以说我有5位作者,每个作者最近会发布5篇帖子。

关于如何做到这一点的任何想法?我不想为每个作者创建单独的循环,它必须是自动的并使用默认循环。感谢。

1 个答案:

答案 0 :(得分:0)

你可以做这样的事情,使用自定义查询(as explained here)来获取每个作者的最新帖子的初始ID,然后将这些帖子ID添加到常规循环查询中:

<?php
$querystr = "
  SELECT wposts.id, max(wposts.post_date) latest_post
  FROM $wpdb->posts wposts
  GROUP BY wposts.post_date
";
$post_ids = array();
if($pageposts = $wpdb->get_results($querystr, OBJECT)( {
  foreach ($pageposts as $post) {
    $post_ids[] = $post->id;
  }
}
query_posts(array('post__in' => $post_ids));
if ( have_posts() ) : while ( have_posts() ) : the_post();
  echo "your loop item output here";
endwhile; else:
endif;
wp_reset_query();
?>

虽然没有经过测试,所以YMMV,但沿着这些方向的东西应该完成工作:P。 祝你好运!