查询自定义邮政类型中的多个分类

时间:2011-05-03 作者:Jason

目前我使用:query_posts("post_type=listing");

提取我的自定义帖子类型的所有条目。但我有一个名为status的分类法,它的值为Available、Pending、Seld。

我只想在一个页面上显示可用和待定,在另一个页面上显示已售出。

我该怎么办?

谢谢

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

自最新wp发布以来,有一个“tax\\u query”参数可用:

global $query_string;
$args[\'tax_query\'] = array(
    array(
         \'taxonomy\' => \'status\'
        ,\'terms\'    => array( \'available\', \'pending\' ) // change to "sold" for 2nd query
        ,\'field\'    => \'slug\'
    ),
);
$args[\'post_type\'] = \'listing\';
parse_str( $query_string, $args );

$avail_n_pend = query_posts( $args );

if ( $avail_n_pend->have_posts() ) : 
    while ( $avail_n_pend->have_posts() ) : 
    $avail_n_pend->the_post();
    // show result
    the_title();
    endwhile; 
endif;

// use this for testing:
/*
echo \'<pre>\'; 
    print_r($GLOBALS[\'wp_query\']->tax_query); 
echo \'</pre>\';
*/

// rewind for second query
rewind_posts();

// second_query
$args[\'tax_query\'] = array(
    array(
         \'taxonomy\' => \'status\'
        ,\'terms\'    => array( \'sold\' )
        ,\'field\'    => \'slug\'
    ),
);
parse_str( $query_string, $args );

$sold = query_posts( $args );

if ( $sold->have_posts() ) : 
    while ( $sold->have_posts() ) : 
    $sold->the_post();
    // show result
    the_title();
    endwhile; 
endif;

结束

相关推荐

在作者档案中执行WP_QUERY以便于使用自定义查询进行分页

我正在使用get_posts 和get_comments 在页面上构建几个循环,我在分页方面遇到了一些问题。我有每页全局帖子选项(Settings > Reading) 设置为10, 这似乎改变了问题。到目前为止,我可以很容易地Page 2 - http://dev.ashfame.com/author/ashfame/page/2/, 但是Page 3 返回a404.如果我降低全局值,我会有更多的分页页面,但不是所有页面(少于应有的页面数量)。Update: 我刚刚尝试将我的自定义设置设置为2(也