从多个用户获取帖子?

时间:2014-02-27 作者:andy

使用允许用户相互跟踪的第三方插件,我们可以像这样检索被跟踪的用户(评论):-

<?php if (have_posts()) : ?>
        <?php global $userpro_social;

        $following = $userpro_social->following( get_current_user_id() ); //get users the current user is following
        print_r($following) ?> // print the array so we can see who we\'re following


        <?php $paged = get_query_var( \'paged\' ) ? get_query_var( \'paged\' ) : 1; ?>     
        <?php query_posts( array( \'author\'=> ??? , \'paged\' => $paged, ) ); ?>      

        <?php while ( have_posts() ) : the_post() ?>


            <?php if ( has_post_format( \'video\' )) {
                    get_template_part( \'video-post\' );
                }elseif ( has_post_format( \'image\' )) {
                    get_template_part( \'image-post\' );
                } else {
                   get_template_part( \'standard-post\' );
                }

            ?>

        <?php endwhile;?>

        <?php endif; ?>
所以这会输出这样的结果

阵列([24]=>1[1]=>1)

ie,我们正在跟踪ID为1和24的用户,是否足够简单?

我迷路的部分是

<?php query_posts( array( \'author\'=> ??? , \'paged\' => $paged, ) ); ?>   
我如何实际输出这些用户的帖子,它已经存储在数组中,所以我认为这应该很容易,但我只是无法理解,即使在阅读了抄本之后。

1 个回复
最合适的回答,由SO网友:gmazzap 整理而成

首先,我建议不要使用query_posts.(如果没有读过,没有人是真正的WPSE用户this answer).

所以你可以使用WP_Query 具有author__in parameter 结合array_keys PHP函数。

$paged = get_query_var( \'paged\' ) ? get_query_var( \'paged\' ) : 1;    

$query = new WP_Query(
  array( \'author__in\' => array_keys( $following ), \'paged\' => $paged )
);

while ( $query->have_posts() ) : $query->the_post();
  // your loop here
endwhile;

wp_reset_postdata();
PS:您不需要在每一行上打开和关闭php标记

结束

相关推荐

Show previous month's posts

我已经设法在1月份浏览了本月的帖子,但我正在努力在去年12月获得上个月的帖子。我想这就是问题所在,那就是2014年,而我所追求的职位是2013年(12月)。如果有人能发现问题,我将不胜感激。我浏览了大量的例子,抄本和WordPress论坛,但没有找到任何有用的东西。 <!-- PREVIOUS MONTH NEWS --> <?php $prevMonth = date(\'M\', mktim