Wordpress wp_query post_type和分类法不起作用

时间:2013-07-18 09:37:47

标签: wordpress custom-post-type custom-taxonomy

我正在尝试使用自定义帖子类型和分类法获取帖子。我试过这个代码:

$paged = (get_query_var('paged')) ? get_query_var('paged') : 1;

$args = array(
   'post_type' => 'specification',
   'tax_query' => array(
        array(
'           taxonomy' => 'model',
            'field' => 'slug',
            'term' => 'grand-cherokee-2013'
        )
    ),
    'order' => 'ASC',
    'paged' => $paged
);
$wp_query = new WP_Query( $args );

global $wp_query;
query_posts( array(  
    'post_type' => 'specification',
    'category_name' => 'model',
    'showposts' => '10' ) 
);

我做了print_r($ wp_query),请求是:

SELECT SQL_CALC_FOUND_ROWS  wp_posts.ID FROM wp_posts  WHERE 1=1  AND 0 = 1 AND wp_posts.post_type = 'specification' AND (wp_posts.post_status = 'publish' OR wp_posts.post_status = 'private') GROUP BY wp_posts.ID ORDER BY wp_posts.post_date DESC LIMIT 0, 10

为什么wordpress添加0 = 1?我认为问题在这里。我怎么解决?

2 个答案:

答案 0 :(得分:0)

你可以试试这种方式

$ caledar_custom_detail = get_term($ c,'calendar_category'); // $ c用于类别ID和自定义类别类型

$current_slug = $caledar_custom_detail->slug;
$post_query_loop_value=query_posts( array( 'calendar_category' => $current_slug, 'showposts' => 3 ) );

在数组中,参数'calendor_category'表示自定义类别类型 $ current_slug表示类别slug
'showposts'表示你想要显示的帖子数量。

如果没有获得所需的输出,请告诉我。

答案 1 :(得分:0)

我会试试这个:

$paged = (get_query_var('paged')) ? get_query_var('paged') : 1;

$args = array(
   'tax_query' => array(
        array(
'           taxonomy' => 'specification',
            'field' => 'slug',
            'term' => 'grand-cherokee-2013'
        )
    ),
    'order' => 'ASC',
    'paged' => $paged
);
$wp_query = new WP_Query( $args );

我认为问题在于,当您想要的是“规范”类型时,您将分类法设置为“模型”。