来自多个帖子ID的WordPress查询

时间:2014-06-28 作者:Sadia Mehjabin

我正在从自定义元数据库获取帖子id数组。我试过了

            $urls= get_post_meta( get_the_ID(), \'videos\', false );
             foreach ( $urls as $url ) {
               foreach ( $url[\'link\'] as $u ) { 
                 $posts[] = $u;
                     }
$my_query = new WP_Query( array( \'post_type\' => \'slider\', \'post__in\' => $posts ) );

if ( $my_query->have_posts() ) {
   while ( $my_query->have_posts() ) {
        $my_query->the_post();
        the_title();
   }
}

wp_reset_postdata();
}
此循环查询选定的帖子id,但它们不是按id顺序排列的。它们是默认的ASC顺序。我尝试过的其他方法

$a=explode(" ",$u);
//$posts[]=$u;
$my_query = new WP_Query( array( \'post_type\' => \'slider\', \'post__in\' => $a ) );
这只显示数组中的最后一篇文章。在var转储上

string(2) "67" string(2) "77" //$u

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

您的第一个示例还需要orderby 参数设置,否则默认为标准日期顺序:

$my_query = new WP_Query(
    array(
        \'post_type\' => \'slider\',
        \'post__in\' => $posts,
        \'orderby\' => \'post__in\'
    )
);

结束

相关推荐

使用新的WP-Query()从循环中过滤后期格式;

嗨,我目前正在为我的博客构建一个主题。下面的代码指向最新的帖子(特色帖子)。因为这将有一个不同的风格比所有其他职位。然而我想过滤掉帖子格式:链接使用我在循环中定义的WP查询,因为它给我带来了更多的灵活性。我该怎么做呢? <?php $featured = new WP_Query(); $featured->query(\'showposts=1\'); ?> <?php while ($featured->have_post