我有一个自定义的帖子类型(公文包类型)和一个自定义的层次分类法(公文包类别)
现在我只想查询potrfolio类型的帖子,所以我会:
$paged = 1;
if ( get_query_var(\'paged\') ) $paged = get_query_var(\'paged\');
if ( get_query_var(\'page\') ) $paged = get_query_var(\'page\');
query_posts( \'&post_type=portfolio-type&paged=\' . $paged );
直到现在,一切都很顺利。现在,我只想查询具有给定ID的自定义分类法类别的子自定义分类法“类别”中的帖子。
所以我试着:
$paged = 1;
if ( get_query_var(\'paged\') ) $paged = get_query_var(\'paged\');
if ( get_query_var(\'page\') ) $paged = get_query_var(\'page\');
$query_args = array(
\'post_type\' => \'portfolio-type\',
\'cat\' => $CAT_ID,
\'paged\' => $paged,
);
query_posts( $query_args );
失败(没有结果),但我理解原因。这些帖子不属于标准类别,而是属于自定义分类法的类别,所以看看wp Codex,这就是我的收获:
$query_args = array(
\'post_type\' => \'portfolio-type\',
\'paged\' => $paged,
\'tax_query\' => array(
\'taxonomy\' => \'portfolio-category\',
\'field\' => \'id\',
\'terms\' => $CAT_ID
)
);
再次失败,但这次显示了公文包类型post\\u type中的所有自定义帖子(tax\\u查询不起作用,无论我在那里输入什么ID,结果都是一样的)
我错过了什么?