В настоящее время есть вариант использования, когда я хочу создать страницу поиска для пользователей. Я хочу, чтобы они могли искать все, что может иметь пользователь, включая некоторые пользовательские поля. У меня есть такие поля, как город, день рождения, род занятий и т. Д. c.
Из-за плагина, который я использую для добавления пользователей в группы и управления ими, он хранит эти поля в таблице wp_usermeta таким образом, что для каждой группы он имеет разные имена с именем meta_key, хотя по сути это те же данные. Например, Город может быть сохранен для Группы 1 как field_10, тогда как в Группе 2 это может быть field_34. Я планирую иметь 50 групп, так что это может затруднить изменение в шаблоне и отслеживать его для 15 настраиваемых полей, которые есть у каждой группы.
Я бы хотел настроить запрос так, чтобы он по существу ищет все в таблицах wp_user и wp_usermeta. Или, если мне нужно указать c, все в таблице wp_user под столбцом «display_name» и все в таблице wp_usermeta под столбцом «meta_value».
$user_search_args = array (
'order' => 'ASC',
'orderby' => 'display_name',
'search' => '*' . esc_attr( $search_term ) . '*',
'fields' => 'all_with_meta',
'meta_query' => array(
'relation' => 'OR',
array(
'key' => 'meta_value',
'value' => $search_term,
'compare' => 'LIKE'
)
)
);
Это то, что у меня так далеко, но я знаю, что не работает .
Цель состоит в том, чтобы, если я наберу "Chica go" в поиске, любой пользователь, у которого есть "Chica go" в любом месте, привязанном к его профилю, подтянется.
Я бы хотел бы, чтобы этот запрос работал так, что он будет искать все в этих двух таблицах или, по крайней мере, все в этих двух столбцах этих таблиц.
Буду признателен за любую помощь!