私は結合したmeta_queryクエリを構築しようとしていますが、うまくいきません。以下の例のように、どのようにしてクエリを実装できるのでしょうか。
ありがとう、Hinnerk
Array
(
[relation] => AND
[0] => Array
(
[key] => price
[value] => 1000
[type] => numeric
[compare] => <=
)
[1] => Array
(
[relation] => OR
[0] => Array
(
[key] => roomcount
[value] => 3
[type] => numeric
[compare] => >=
)
[1] => Array
(
[key] => bathroomcount
[value] => 2
[type] => numeric
[compare] => >=
)
)
)
構築した配列を使用して、Iと考えますこれは正しい構文です。
$meta_query_args = array(
'meta_key' => 'price',
'meta_value_num' => 1000,
'meta_compare' => '<=',
'meta_query' => array(
'relation' => 'OR',
array(
'key' => 'roomcount',
'value' => 3,
'type' => 'numeric',
'compare' => '>='
),
array(
'key' => 'bathroomcount',
'value' => 2,
'type' => 'numeric',
'compare' => '>='
)
)
);
$realestate_meta_query = new WP_Query( $meta_query_args );
meta_query
をもう1つ上のレベルにネストすることもできます(ただし、これでうまくいくかどうかはわかりません)。
$meta_query_args = array(
'meta_query' => array(
'relation' => 'AND',
array(
'key' => 'price',
'value' => 1000,
'type' => 'numeric',
'compare' => '<='
),
array(
'relation' => 'OR',
array(
'key' => 'roomcount',
'value' => 3,
'type' => 'numeric',
'compare' => '>='
),
array(
'key' => 'bathroomcount',
'value' => 2,
'type' => 'numeric',
'compare' => '>='
)
)
)
);
$realestate_meta_query = new WP_Query( $meta_query_args );