Intereting Posts
Нужна помощь в установке дочерней темы Хоффмана Необходимо изменить все ссылки в содержимом страницы, но не в сообщении. Динамически отправить pdf, прикрепленный к сообщению с контактной формой 7 Как сохранить CPT от видимости на лицевой стороне? Измените имя содержимого WP> Папка «Темы» Остановить WordPress от обрезки изображений с использованием параметров URL Как обходить проверку проверки Woocommerce из плагина? Как вы представляете WordPress дизайнеру, который боится? Как сделать дамп MySQL с сайта без использования скрипта поиска и замены для локальной разработки? Изменение формата потока активности Buddypress Дата закрытия Режим YouTube oEmbed и режим конфиденциальности WooCommerce: прямая регистрация Страница WordPress, удаляющий теги BR, нуждается в помощи Добавить поле в таблицу пользователя в базе данных при нажатии ссылки Якорь удалено из DIV после использования Quick Edit

Расширенный SQL-запрос SQL

через 4 часа я не могу найти решение, как правильно написать SQL-запрос для эхо-данных из двух таблиц.

У меня есть две таблицы, и мне нужно «ПРИСОЕДИНИТЬ» их данные.

Первая таблица – wp_users вторая – wp_usermeta .

Из wp_users мне нужно только user_email (так что это будет SELECT user_email FROM wp_users ).

Но мне нужно присоединиться к другой таблице wp_usermeta где мне нужно много вещей, таких как first_name , last_name , phone_number , schoolid , schoolname и т. Д.

И вот проблема 🙂

В wp_usermeta мне нужно прочитать данные из двух столбцов – meta_key и meta_value . В столбце meta_key хранится имя переменной (например, schoolid и meta_value столбца meta_value значение meta_key (например, XXXXXXXX ).

У меня есть этот код:

  <table> <tr><th>Email Address</th><th>First Name</th></tr> <?php $teacher_table = "SELECT wp_users.user_email, wp_usermeta.meta_value FROM wp_users INNER JOIN wp_usermeta ON wp_users.ID = wp_usermeta.user_id WHERE wp_usermeta.meta_key = 'nickname'"; $results_table_main = $wpdb->get_results($teacher_table); foreach ($results_table_main as $value){ echo '<tr><td>'.$value->user_email .'</td>'; echo '<td>'.$value->meta_value .'</td>'; } ?> </table> 

Это работает, но я не знаю, как изменить его, чтобы получить больше meta_keys с их meta_values .

Есть идеи?

В WP вам редко приходится «писать SQL-запросы», если вы не работаете с пользовательскими таблицами, а используете его API …

WP_User_Query будет объединяться для всех метаданных, прикрепленных к каждому пользователю, и возвращать вам обычные пользовательские объекты, поэтому почему бы не использовать его вместо этого?

Кроме того, см. get_user_meta()