2010-07-13 63 views
1

我想基于数组中包含的ID号来查询帖子。Wordpress query_posts()与数组?

我的阵列(称为$ my_array)看起来是这样的:

Array 
(
    [0] => 108 
    [1] => 129 
    [2] => 145 
) 

我的查询是这样的:

<?php query_posts(array('post__in' => $my_array)); ?> 

然而,这只是返回一个职位,该职位具有的标识数组中的第一项(108)。

我的语法错了吗?

+0

请注意,你可以使用post_type =>'任何',如果你有一个范围内的多个帖子类型的ID – Ash 2011-11-25 12:15:07

回答

5
$args = array(
    'post_type' => 'page',//or whatever type 
    'post__in' => array(108,129,145) 
); 
query_posts($args); 

$arr=array(108,129,145); 
$args = array(
    'post_type' => 'page', 
    'post__in' => $arr 
); 
query_posts($args); 
+0

是否有可能重新排序的帖子或我们坚持数组的顺序(这似乎与我的'米工作) – v3nt 2012-05-24 12:02:57

2

你总是要设置post_typepost__in说法。所以你的行应该看起来像下面这样:

<?php query_posts(array('post_type' => 'post', 'post__in' => $my_array)); ?> 

这将使用您在数组中具有的ID查询帖子。

0

丹尼尔, 我发布了一个答案,虽然你可能找到了它。我没有声望发表评论,query_posts支持WP_Query的所有参数,包括订购你可以在query_posts调用中添加'orderby'=>'title','order'=>'ASC'