WordPress的 - 如何获得任何类型的帖子包括附件的ID?

问题描述:

我需要通过ID列表($ ID_LIST)任何职位,这是我的代码WordPress的 - 如何获得任何类型的帖子包括附件的ID?

query_posts(array('posts_per_page'=>-1, 
       'caller_get_posts'=>1, 
       'post_type'=>'any', 
       'post__in'=>$id_list) 
      ); 

我得到这个查询的文章和网页,但附件没有得到包括在内,我发现他们被过滤由'post_type = any'实际上不包括附件。

如何让他们都不需要做额外的查询?

+1

你确定吗?我的印象是post_type =任何应该包括除修订以外的所有文章类型? – windyjonas 2011-02-25 12:49:52

好吧,这花了永远的解决。事实证明,post_type可以处理一个数组,您将需要强制它获取附件。您还需要将post_status设置为数组以获取附件,该附件通常具有“继承”状态。看起来他们中的一些人有post_status ='closed',但我没有深入了解这意味着什么。

这里是我的查询,其获取的帖子和附件:

<?php  
    $args = array(
     'post_type' => array(
      'attachment', 
      'post', 
     ), 
     'post_status' => array(
      'open', 
      'inherit', 
     ), 
     'numberposts' => '900', 
     'order' => 'DESC', 
    ); 
    $posts = get_posts($args); 
    print_r($posts); 
?> 

编辑:这能很好地工作,你使用以及循环。我只是使用get_posts,因为它更容易打印出来。

+0

关于'post_status'的所有信息都有默认值,而attchment没有'post_status',我添加了'post_status'=> array(null,'publish'),我的查询现在可以工作。 – Edward 2011-02-27 05:03:28

+0

太棒了。乐意效劳。 :) – jdp 2011-02-27 06:59:35