私は衣料品店を作っています。服はサイズ(xs、s、m、l、xlなど)に基づいて変わりやすい商品です。フィルターに基づいて、在庫のある商品を表示するためのフィルターを作成しようとしています。そのため、 "xs"フィルタをクリックすると、XSの変動があり、在庫の変動がある商品が表示されます。
これまでのところ、私はこのようなものを持っています:
$query_args = array(
'post_type' => 'product', 'product_variation',
'posts_per_page' => 12,
'paged' => $paged,
'tax_query' => array(
array(
'taxonomy' => 'pa_sizes',
'field' => 'term_id',
'terms' => 'xs',
),
),
'meta_query' => array(
array(
'key' => '_stock_status',
'value' => 'outofstock',
'compare' => '='
),
)
);
$query = new WP_Query($query_args);
私は今「在庫切れ」を探していることを知っていますが、それは単なるテストであり、在庫切れのサイズの製品をいくつか作成したにもかかわらず、これでも製品には関係しません。
この方法は正しくありませんか?
'post_type' => array('product', 'product_variation'),
あなたの$ query_argsは壊れた配列です
Tax_queryを変更する必要があります。 xs
はterm_id
ではなくslug
です。
だからあなたのtax_queryはのようになってしまうでしょう
'tax_query' => array(
array(
'taxonomy' => 'pa_sizes',
'field' => 'slug',
'terms' => 'xs'
)
)
私は「instock」問題も手助けしたいと思いますが、私はその質問にもこだわります。