2015-04-23 82 views
0

我想生成一個查詢,返回一個類別數組中的帖子,也是另一個類別數組中的帖子。所以,如果我的兩個數組:是否可以在Wordpress中結合多個category__in參數?

$offices = Array ([0] => 73 [1] => 74) 

$grants = Array ([0] => 108 [1] => 109)) 

我想包括匹配任何條款108或109和匹配的崗位要麼條款73或74

這可能嗎?我的直覺是用戶類別,但是你只能使用一次,如果我組合了數組,它會匹配任何類別的帖子,這不是我想要的。

回答

1

我想包括匹配任何條款108或109和匹配任何條款73或74

分類參數將爲類別也作爲類別的工作崗位是一個內置的分類。

$args = array(
    'post_type' => 'post', 
    'tax_query' => array(
     'relation' => 'AND', 
     array(
      'taxonomy' => 'category', 
      'field' => 'term_id', 
      'terms' => array(73, 74), 
     ), 
     array(
      'taxonomy' => 'category', 
      'field' => 'term_id', 
      'terms' => array(108, 109), 
     ), 
    ), 
); 
$query = new WP_Query($args); 

Codex WP_Query

-1

可能這個查詢有幫助嗎?

$Query = "SELECT * FROM $wpdb->posts 
    LEFT JOIN $wpdb->postmeta ON($wpdb->posts.ID = $wpdb->postmeta.post_id) 
    LEFT JOIN $wpdb->term_relationships ON($wpdb->posts.ID = $wpdb->term_relationships.object_id) 
    LEFT JOIN $wpdb->term_taxonomy ON($wpdb->term_relationships.term_taxonomy_id = $wpdb->term_taxonomy.term_taxonomy_id) 
    LEFT JOIN $wpdb->terms ON($wpdb->term_taxonomy.term_id = $wpdb->terms.term_id) 
    WHERE $wpdb->term_taxonomy.taxonomy = 'category' 
    AND $wpdb->posts.post_status = 'publish' 
    AND $wpdb->posts.post_type = 'post' 
    AND ($wpdb->term_taxonomy.term_id = '".$offices[0]."' OR $wpdb->term_taxonomy.term_id = '".$offices[1]."') 
    AND ($wpdb->term_taxonomy.term_id = '".$grants[0]."' OR $wpdb->term_taxonomy.term_id = '".$grants[0]."') 
    ORDER BY $wpdb->postmeta.meta_value ASC" 

    $post = $wpdb->get_results($Query); 
相關問題