2016-07-31 2 views
1

によってWooCommerce製品を取得することはできません。私は、カテゴリIDによって、このように製品を取得しようとしていますカテゴリID

<?php 

$args = array(
    'posts_per_page' => 20, 
    'taxonomy' => 'product_cat', 
    'post_type' => 'product', 
    'post_status' => 'publish', 
    'cat' => $cat_id 
); 

$query = new WP_Query($args); 

$posts = get_posts($args); 
var_dump($posts); 

?> 

$cat_id変数が正しいカテゴリIDが含まれています。私はそれをチェックした。製品が正しいカテゴリに追加されます。

問題は、var_dump$posts変数のときはいつでも空の配列が得られます。私が引数から'cat'キーワードを削除すると、問題なくすべてのカテゴリから製品を取得できます。唯一の問題は'cat'キーワードです。

何か間違っていますか?

答えて

1

あなたは代わりに、これを試みることができる:

$args = array(
    'posts_per_page' => 20, 
    'post_type' => 'product', 
    'post_status' => 'publish', 
    'tax_query' = array(
     'taxonomy' => 'product_cat', 
     'field' => 'term_id', 
     'term'  => $cat_id 
    ) 
); 
$query = new WP_Query($args); 
var_dump($query); 

は、私はそれをテストしていないが、それが動作するはずです。

+0

ちょっと、私はそれを数分前にテストすることができましたが、それは動作します(しかし、私は 'id'を 'term_id'に変更しなければなりませんでした)。私は正しい答えを選択しています。 –

関連する問題