Фильтрация WP_Query для записей с определенным мета-значением
Как отфильтровать WP_Query для получения записей с определенным мета-значением без использования пользовательского SQL-запроса?
У меня есть произвольный тип записи с мета-ключом: "open" и возможными мета-значениями: "yes" или "no".
Я хочу показывать только записи с meta_value = yes для meta_key = "open".
function filter_where($where = '') {
$open = "yes";
// $where .= " AND post_date > '" . date('Y-m-d', strtotime('-2 days')) . "'";
return $where;
}
add_filter('posts_where', 'filter_where');

Я не совсем понял из вашей формулировки, пробовали ли вы использовать аргумент запроса или это не сработало?
$the_query = new WP_Query(array( 'meta_key' => 'open', 'meta_value' => 'yes' ));
Параметры произвольных полей в Кодексе.

спасибо за ваш быстрый ответ. Я пробовал это сделать, но по какой-то причине у меня не работает. У меня выдает ошибку 404.

Я добавил его в массив $args после настройки $paged: $paged = (get_query_var('paged')) ? get_query_var('paged') : 1; и перед: $temp = $wp_query; $wp_query= null; $wp_query = new WP_Query($args);

@Henk Jan, пожалуйста, добавьте код к вашему вопросу, комментарии для этого не подходят

Поддерживаю. Также: используйте методы $wpdb
при выполнении запросов.
