Как получить данные пользователя из пользовательской таблицы в базе данных WordPress по ID пользователя?

2 июн. 2017 г., 14:24:46
Просмотры: 28.1K
Голосов: 2

У меня есть несколько пользовательских полей, которые требуют данных пользователя из пользовательской таблицы базы данных.

Я пробовал:

global $wpdb;

$table_name = $wpdb->prefix . "wplusersprofiles";

$user = $wpdb->get_results( "SELECT * FROM $table_name" );

и вызов данных следующим образом:

<tr>
    <th><label for="gender"><?php _e("Пол"); ?></label></th>
    <td>
        <input type="text" name="gender" id="gender" value="<?php echo $user->gender ?>" class="regular-text" /><br />
    </td>
</tr>

Но безуспешно.

Пример таблицы в БД: пример структуры таблицы базы данных

0
Все ответы на вопрос 1
1
15

Первый раздел вашего кода верен

  global $wpdb;

  $table_name = $wpdb->prefix . "wplusersprofiles";

  $user = $wpdb->get_results( "SELECT * FROM $table_name" );

Проблема заключается в том, как вы пытались извлечь данные отдельной строки. Функция get_results в вашем случае возвращает массив объектов. Поэтому правильный способ извлечения отдельных данных должен быть таким...

<?php foreach ($user as $row){ ?>
<tr>
    <th><label for="gender"><?php _e("Пол"); ?></label></th>
    <td>
        <input type="text" name="gender" id="gender" value="<?php echo $row->gender ?>" class="regular-text" /><br />
    </td>
</tr>
<?php } ?>
2 июн. 2017 г. 15:15:42
Комментарии

Отличная работа. Спасибо за информацию. Теперь всё работает.

Callum Callum
2 июн. 2017 г. 15:26:24