按特定帖子ID排序(&Include)数组

时间:2011-09-12 作者:Nina

我有以下几点:

<?php $num_cols = 2; // set the number of columns here


            $args = array(
                    \'post_type\' => \'testimonials\',
                    \'posts_per_page\' => 4,
                    \'orderby\' => \'ID\', 
                    \'include\' => \'883, 563, 568, 106\',                                  
                    \'order\' => \'\'           

                    ); 
            query_posts($args);
            if (have_posts()) :
            for ( $i=1 ; $i <= $num_cols; $i++ ) :
            echo \'<div id="col-\'.$i.\'" class="col">\';
            $counter = $num_cols + 1 - $i;
            while (have_posts()) : the_post();

            if( $counter%$num_cols == 0 ) : ?>
                <div id="box">

                <?php the_post_thumbnail(\'post-thumbnail\', array(\'title\' => \'\', \'alt\' => \'\')); ?>



                <?php the_excerpt();?>
                </div>
                <?php endif; $counter++;
                  endwhile;
                  echo \'</div>\'; 
                  endfor;
                  endif; 
                wp_reset_query(); 
                ?>
我想,只要把帖子ID放进去,我就可以让特定的帖子出现,并且只显示那些帖子。不幸的是,情况似乎并非如此。所以我想知道是否有人知道我如何做到这一点。

提前感谢!

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

使用post__in 键而不是include 从特定的帖子ID获取帖子。

$args = array(
    \'post_type\' => \'testimonials\',
    \'posts_per_page\' => 4,
    \'orderby\' => \'ID\', 
    \'post__in\' => array(883, 563, 568, 106),
); 
和至order postsgiven posts ids, 可以使用以下数组。

$args = array(
       \'post_type\' => \'testimonials\',
       \'posts_per_page\' => 4,
      \'orderby\' => \'post__in\', 
      \'post__in\' => array(883, 563, 568, 106),
   );

SO网友:stephenkeable

$args = array(
    \'post_type\' => \'testimonials\',
    \'posts_per_page\' => 4,
    \'orderby\' => \'post__in\', 
    \'post__in\' => array(883, 563, 568, 106)
); 
使用post__inorderby 值它将遵循传入的ID数组的顺序post__in

SO网友:Rick Aranda

对我来说,去除冒号很有效”用昏迷来代替“像这样:

                   \'orderby\' => \'post__in\',
                   \'post__in\' => array(185, 157, 163),

结束

相关推荐

Orderby字段-可用选项列表?

我想按照页面属性的“顺序”字段对项目进行排序(参见pic)。我遇到过各种各样的“定制标签”解决方案,但没有一个列出了orderby可以使用的所有可用字段。我想使用编辑器中显示的“顺序”字段。我尝试用“order”替换模板中的orderby字段,但没有看到任何结果。我当前正在使用:post_type=projects&order=ASC&orderby=order&offset=1&posts_per_page=100