get_userdata()
Отримує дані вказаного користувача як об’єкт WP_User .
Дані, що повертаються функцією, повністю відповідають поля таблиць БД wp_users і wp_usermeta . Опис таблиць див. тут .
Деякі корисні значення полів таблиць wp_users та wp_usermeta , які можна використовувати для отримання даних:
users ID user_login user_pass user_nicename user_email user_url user_registered display_name user_meta user_firstname user_lastname nickname user_description wp_capabilities Масив admin_color Тема адмін-панелі. Типово: свіжа (fresh) closedpostboxes_page primary_blog rich_editing source_domain
Це init .
Заміна функції (перевизначення) — у плагіні можна створити функцію з такою самою назвою, тоді вона замінить поточну функцію.
get_user_by()
(швидко) | 50000 разів – 0.78 сек
(дуже швидко) |
PHP 7.1.2RC1, WP 4.7.2
Хуків немає.
Повертає
WP_User|false
. Об’єкт даних WP_User . false — якщо не вдалося знайти вказаного користувача.
З версії 3.2 дані, що повертаються, трохи змінилися: повертається об’єкт WP_User . Дані об’єкті розбиваються на групи: data , caps , roles (раніше дані поверталися у списку). Однак завдяки “чарівним” (службовим) методам PHP, дані можна отримати як і раніше. Наприклад, зараз дані зберігаються так: get_userdata()->data->rich_editing , але отримати їх можна так: get_userdata()->rich_editing , незважаючи на те, що var_dump() не покаже цей взаємозв’язок.
Використання
get_userdata($user_id);
-
$user_id
(число) (обов’язковий) - ID користувача, дані якого потрібно отримати.
Приклади
#1 Як виводити дані з отриманого об’єкта даних
$user_info = get_userdata(1); echo 'Ім'я користувача: ' . $user_info->user_login . "n"; echo 'Рівень доступу:' . $user_info->user_level . "n"; echo 'ID:'. $user_info->ID . "n"; /* Виведе: Ім'я користувача: admin Доступ: 10 ID: 1 */
#2 Дані у змінну
Ще один приклад, тільки тут запишемо дані спочатку в змінні, а потім виведемо з екрана:
$ user = get_userdata( 1 ); $username = $user->user_login; $first_name = $user->first_name; $last_name = $user->last_name; echo "$first_name $last_name зайшов на сайт під логіном: $username."; /* Об'єкт $user: WP_User Object( [data] => stdClass Object( [ID] => 80 [user_login] => kogian [user_pass] => $P$BJFHKJfUKyWv1TwЛОВАЕnYU0JGNsq. [user_nicename] => kogian [user_email] => [email protected] [user_url] => http://example.com/ [user_registered] => 2016-09-01 00:34:42 [user_activation_key] => [user_status] => [display_name] => kogian ) [ID] => 80 [caps] => Array( [subscriber] => 1 ) [cap_key] => wp_capabilities [roles] => Array( [0] => subscriber ) [allcaps] => Array( [read] => 1 [level_0] => 1 [subscriber] => 1 ) [filter] => [site_id:WP_User:private] => 1 ) */
#3 Методи класу
Отриманий об’єкт за допомогою get_userdata() – це екземпляр класу і має методи, які можна використовувати. Іноді це може стати в нагоді. Ось простий приклад отримання опції користувача за допомогою методу $user->get() :
$user = get_userdata(1); echo $username = $user->get('user_login');
Список деяких методів:
Функція | Опис |
---|---|
WP_User::get( $key ) | Retrieves the value of a property or meta key. |
WP_User::has_prop( $key ) | Визначення, яке значення або meta key є набір. |
WP_User::has_cap( $cap, …$args ) | Відновити те, що користувач має особливу здатність. |
WP_User::get_role_caps( ) | Від’їжджають всі можливості людей, які мають roles, і merges them with individual user capabilities. |
WP_User::add_role( $role ) | Adds role to user. |
WP_User::remove_role( $role ) | Removes role from user. |
WP_User::set_role( $role ) | Sets the role of the user. |
список змін
З версії 0.71 | Введено. |
Код get_userdata() get userdata WP 6.0.2
function get_userdata( $user_id ) { return get_user_by( 'id', $user_id ); }