Я настраиваю страницу свойств с расширенными настраиваемыми полями и настраиваемыми типами записей.Мне нужно иметь возможность фильтровать свойства по количеству спален, цене, расположению и т. Д. Мне удалось отфильтровать свойства по количеству спален, но я не могу понять, как применять два фильтра одновременно.Например, я создал поле acf с именем test, и оно имеет значения;один, два и три.Теперь я хочу отобразить свойство, которое имеет 5 спален и тестовое значение три.Как я могу изменить свой код, чтобы сделать это?
$GLOBALS['my_query_filters'] = array(
'field_1' => 'bedrooms',
'field_2' => 'test',
);
add_action('pre_get_posts', 'my_pre_get_posts');
function my_pre_get_posts( $query ){
// bail early if is in admin
if( is_admin() ){
return;
}
// get meta query
$meta_query = $query->get('meta_query');
foreach( $GLOBALS['my_query_filters'] as $key => $name ) {
if( isset($query->query_vars['post_type']) && $query->query_vars['post_type'] == 'property' ) {
if( isset($_GET[ $name ]) ){
$value = explode(',', $_GET[ $name ]);
$meta_query[] = array(
'key' => $name,
'value' => $value,
'compare' => 'IN',
);
}
}
}
// update meta query
$query->set('meta_query', $meta_query);
return;
}