2016-08-26 32 views
0

我需要弄清楚如何根據以下條件查詢分類: 如果它們在分類中(按ID)或者它們有分類術語。因此,在一個存檔頁面上,我擁有所有類別ID爲12的帖子,並且所有具有分類術語「archive-trading-tools」的帖子都設置了自定義分類,並且該部分正在運行。我被困在:WP查詢是否在分類或分類中

<?php 
$query_args = array(
    'post_type' => array('post', 'webinar'), 
    'posts_per_page' => 10, 
    'paged' => $paged, 
    'page' => $paged, 
    'cat' => 12, 
    //'relation' => 'OR' 
    ); 
$query_args['tax_query'] = array (
    'taxonomy' => 'archive-categories', 
    'term' => 'archive-trading-tools' 
    ); 

$the_query = new WP_Query($query_args); 
?> 

回答

0

在WordPress的類別是一個內置的分類。那麼在理論上,以下應該起作用。

$args = array(
'post_type' => array('post', 'webinar'), 
'posts_per_page' => 10, 
'paged' => $paged, 
'page' => $paged, 
'tax_query' => array(
    'relation' => 'OR', 
    array(
     'taxonomy' => 'archive-categories', 
     'field' => 'slug' 
     'terms' => 'archive-trading-tools', 
    ), 
    array(
     'taxonomy' => 'category', 
     'field' => 'term_id', 
     'terms' => 12 
    ) 
) 
); 
$query = new WP_Query($args); 
+0

返回一個「沒有職位符合您的條件」 –

0

要擴大@描述的答案,您的tax_query中的「terms」應該是「term」而不是「terms」。沒有結局。

$args = array(
'post_type' => array('post', 'webinar'), 
'posts_per_page' => 10, 
'paged' => $paged, 
'page' => $paged, 
'tax_query' => array(
'relation' => 'OR', 
    array(
     'taxonomy' => 'archive-categories', 
     'field' => 'slug' 
     'terms' => 'archive-trading-tools', 
    ), 
    array(
     'taxonomy' => 'category', 
     'field' => 'term_id', 
     'terms' => 12 
    ) 
    ) 
); 
$query = new WP_Query($args); 
+0

每對WP_Query(https://codex.wordpress.org/Class_Reference/WP_Query)的文件,「條款」應即使只有一條使用術語。 – depiction