// 引数の初期設定
$args = array(
'post_type' => 'xxx',
'posts_per_page' => 99,
'orderby' => 'meta_value_num',
'meta_key' => 'price'
);
// 検索KWの追加
if (!empty($condition1)) {
$args['s'] = $keyword;
}
// タクソノミーの追加
if (!empty($condition2)) {
$tax_query = array(
array(
'taxonomy' => 'category_name',
'field' => 'slug',
'terms' => $category
)
);
$args['tax_query'] = $tax_query;
}
// メタクエリーの初期設定(オプション)
$meta_query = array(
array(
'key' => 'xxx',
'compare' => 'EXISTS'
)
);
// メタクエリーの設定
if (!empty($condition3)) {
$meta = array(
'key' => $key,
'value' => $value
);
array_push($meta_query, $meta);
}
// メタクエリーの追加
$args['meta_query'] = $meta_query;
$query = new WP_Query($args);
目次