可以使用get_posts代替人工SQL查詢:
$post_ids = get_posts(array(
'numberposts' => -1, // get all posts.
'tax_query' => array(
array(
'taxonomy' => 'category',
'field' => 'id',
'terms' => array(165,166,158,157),
),
),
'fields' => 'ids', // Only get post IDs
));
沒有試過,但還沒有給它一個嘗試:
$post_ids = get_posts(array(
'numberposts' => -1, // get all posts.
'relation' => 'AND'
'tax_query' => array(
array(
'taxonomy' => 'category',
'field' => 'id',
'terms' => array(165),
),
array(
'taxonomy' => 'category',
'field' => 'id',
'terms' => array(166),
),
array(
'taxonomy' => 'category',
'field' => 'id',
'terms' => array(158),
),
array(
'taxonomy' => 'category',
'field' => 'id',
'terms' => array(157),
),
),
'fields' => 'ids', // Only get post IDs
));
http://codex.wordpress.org/Template_Tags/get_posts
乾杯!
謝謝,但結果是一樣的。我得到所有帖子,他們至少有一個數字165,166,158,157。我想獲得他們擁有所有這些類別的帖子的ID。 – user2969404
我編輯了答案,隨時嘗試讓我知道它是否有效。謝謝 –