Получение всех пользователей с определенным мета-ключом
27 сент. 2012 г., 23:23:45
Просмотры: 29.6K
Голосов: 6
Я хотел бы использовать get_users() для получения всех пользователей, у которых есть определенный meta_key, но мне не нужно указывать конкретное значение, так как оно будет разным для каждого пользователя. Значение представляет собой JSON-строку. Это возможно?
emersonthis
1.37K
Все ответы на вопрос
1
0
Вы можете использовать только аргумент meta_key, результат будет аналогичен использованию SQL-оператора EXISTS.
<?php
$users = get_users(array(
'meta_key' => 'your_meta_key',
));
Альтернативно, вы можете использовать пустую строку для meta_value (значение по умолчанию) и > для meta_compare. Результат будет таким же (вероятно, потому что meta_value игнорируется, если оно пустое!).
<?php
$users = get_users(array(
'meta_key' => 'your_meta_key',
'meta_value' => '',
'meta_compare' => '>',
));
Первый метод также работает при использовании WP_Query и meta_query. Пример из моего плагина:
$links = get_posts(array(
'post_type' => self::POST_TYPE,
'numberposts' => apply_filters('seoal_number_links', -1),
'meta_query' => array(
'relation' => 'AND',
array(
'key' => self::get_key("type_{$post->post_type}"),
'value' => 'on',
'compare' => '='
),
array(
'key' => self::get_key('url'),
'compare' => 'EXISTS' // не делает ничего, просто напоминание
),
array(
'key' => self::get_key('keywords'),
'compare' => 'EXISTS' // не делает ничего, просто напоминание
)
),
'suppress_filters' => false,
));
chrisguitarguy
21.5K
27 сент. 2012 г. 23:43:06
Похожие вопросы
1
ответов