Отримує дані про поточного авторизованого користувача (об’єкт WP_User). Встановлює користувача, якщо не встановлено.
Встановлює поточного користувача, при першому виклик функції, далі результат запам’ятовується в глобальну змінну $current_user. Якщо користувач не авторизований, то встановлюється порожній користувач wp_set_current_user(0) .
Функцію можна використовувати з події plugins_loaded . Якщо викликати її раніше, отримаємо fatal error.
Поверне 0
, якщо використовується у неавторизованому REST запиті. Один із способів авторизувати REST запит – це вказати код nonce. Детальніше про авторизацію в REST .
Якщо потрібно викликати функцію до події plugins_loaded , то потрібно попередньо підключити залежності. Проте робити це потрібно з повним розумінням того, як працює авторизація.
// Залежно
wp_cookie_constants();
require ABSPATH. WPINC. '/pluggable.php';
$cuser = wp_get_current_user(); //> WP_User object
Використовуйте get_current_user_id() , коли потрібно отримати ID користувача.
$current_user_id = get_current_user_id();
$current_user = wp_get_current_user();
ID поточного користувача визначається функціям:
Це init .
Заміна функції (перевизначення) — у плагіні можна створити функцію з такою самою назвою, тоді вона замінить поточну функцію.
1 раз – 0.00001 сек
(швидкість світла) | 50000 разів – 0.03 сек
(швидкість світла)
Хуків немає.
Повертає WP_User
. Об’єкт WP_User.
WP_User Object
(
[data] => stdClass Object
(
[ID] => 1
[user_login] => alex
[user_pass] => $P$B/NlqweHhtrD6HthgjF5UYOMdT77.x0
[user_nicename] => alex-1
[user_email] => [email protected]
[user_url] =>
[user_registered] => 2010-03-26 09:27:40
[user_activation_key] => 1987530484:$P$ByO33dFHn3aWu.Pe4Uw.MUhGGT59zc1
[user_status] => 1646545990
[display_name] => Alex
)
[ID] => 1
[caps] => Array
(
[administrator] => 1
)
[cap_key] => wp_capabilities
[roles] => Array
(
[0] => administrator
)
[allcaps] => Array
(
[switch_themes] => 1
[edit_themes] => 1
[activate_plugins] => 1
[edit_plugins] => 1
[edit_users] => 1
[edit_files] => 1
[manage_options] => 1
[moderate_comments] => 1
[manage_categories] => 1
[manage_links] => 1
[upload_files] => 1
[import] => 1
[unfiltered_html] => 1
[edit_posts] => 1
[edit_others_posts] => 1
[edit_published_posts] => 1
[publish_posts] => 1
[edit_pages] => 1
[read] => 1
[level_10] => 1
[level_9] => 1
[level_8] => 1
[level_7] => 1
[level_6] => 1
[level_5] => 1
[level_4] => 1
[level_3] => 1
[level_2] => 1
[level_1] => 1
[level_0] => 1
[edit_others_pages] => 1
[edit_published_pages] => 1
[publish_pages] => 1
[delete_pages] => 1
[delete_others_pages] => 1
[delete_published_pages] => 1
[delete_posts] => 1
[delete_others_posts] => 1
[delete_published_posts] => 1
[delete_private_posts] => 1
[edit_private_posts] => 1
[read_private_posts] => 1
[delete_private_pages] => 1
[edit_private_pages] => 1
[read_private_pages] => 1
[delete_users] => 1
[create_users] => 1
[unfiltered_upload] => 1
[edit_dashboard] => 1
[update_plugins] => 1
[delete_plugins] => 1
[install_plugins] => 1
[update_themes] => 1
[install_themes] => 1
[manage_downloads] => 1
[manage_database] => 1
[democracy_admin] => 1
[update_core] => 1
[list_users] => 1
[remove_users] => 1
[promote_users] => 1
[edit_theme_options] => 1
[delete_themes] => 1
[export] => 1
[edit_artic] => 1
[read_artic] => 1
[delete_artic] => 1
[edit_artics] => 1
[edit_others_artics] => 1
[publish_artics] => 1
[read_private_artics] => 1
[delete_artics] => 1
[delete_private_artics] => 1
[delete_published_artics] => 1
[delete_others_artics] => 1
[edit_private_artics] => 1
[edit_published_artics] => 1
[manage_woocommerce] => 1
[view_woocommerce_reports] => 1
[edit_product] => 1
[read_product] => 1
[delete_product] => 1
[edit_products] => 1
[edit_others_products] => 1
[publish_products] => 1
[read_private_products] => 1
[delete_products] => 1
[delete_private_products] => 1
[delete_published_products] => 1
[delete_others_products] => 1
[edit_private_products] => 1
[edit_published_products] => 1
[manage_product_terms] => 1
[edit_product_terms] => 1
[delete_product_terms] => 1
[assign_product_terms] => 1
[edit_shop_order] => 1
[read_shop_order] => 1
[delete_shop_order] => 1
[edit_shop_orders] => 1
[edit_others_shop_orders] => 1
[publish_shop_orders] => 1
[read_private_shop_orders] => 1
[delete_shop_orders] => 1
[delete_private_shop_orders] => 1
[delete_published_shop_orders] => 1
[delete_others_shop_orders] => 1
[edit_private_shop_orders] => 1
[edit_published_shop_orders] => 1
[manage_shop_order_terms] => 1
[edit_shop_order_terms] => 1
[delete_shop_order_terms] => 1
[assign_shop_order_terms] => 1
[edit_shop_coupon] => 1
[read_shop_coupon] => 1
[delete_shop_coupon] => 1
[edit_shop_coupons] => 1
[edit_others_shop_coupons] => 1
[publish_shop_coupons] => 1
[read_private_shop_coupons] => 1
[delete_shop_coupons] => 1
[delete_private_shop_coupons] => 1
[delete_published_shop_coupons] => 1
[delete_others_shop_coupons] => 1
[edit_private_shop_coupons] => 1
[edit_published_shop_coupons] => 1
[manage_shop_coupon_terms] => 1
[edit_shop_coupon_terms] => 1
[delete_shop_coupon_terms] => 1
[assign_shop_coupon_terms] => 1
[edit_shop_webhook] => 1
[read_shop_webhook] => 1
[delete_shop_webhook] => 1
[edit_shop_webhooks] => 1
[edit_others_shop_webhooks] => 1
[publish_shop_webhooks] => 1
[read_private_shop_webhooks] => 1
[delete_shop_webhooks] => 1
[delete_private_shop_webhooks] => 1
[delete_published_shop_webhooks] => 1
[delete_others_shop_webhooks] => 1
[edit_private_shop_webhooks] => 1
[edit_published_shop_webhooks] => 1
[manage_shop_webhook_terms] => 1
[edit_shop_webhook_terms] => 1
[delete_shop_webhook_terms] => 1
[assign_shop_webhook_terms] => 1
[ure_edit_roles] => 1
[ure_create_roles] => 1
[ure_delete_roles] => 1
[ure_create_capabilities] => 1
[ure_delete_capabilities] => 1
[ure_manage_options] => 1
[ure_reset_roles] => 1
[edit_blocks] => 1
[edit_others_blocks] => 1
[publish_blocks] => 1
[read_private_blocks] => 1
[read_blocks] => 1
[delete_blocks] => 1
[delete_private_blocks] => 1
[delete_published_blocks] => 1
[delete_others_blocks] => 1
[edit_private_blocks] => 1
[edit_published_blocks] => 1
[create_blocks] => 1
[administrator] => 1
)
[filter] =>
[site_id:WP_User:private] => 1
) Якщо користувач не авторизовано, поверне порожній об’єкт! Тому НЕ МОЖНА перевіряти чи авторизований користувач через цю функцію:
if( wp_get_current_user() ){
echo 'цей рядок буде виводитися завжди!';
}
// Потрібно так:
if( wp_get_current_user()->exists() ){
echo 'Авторизовано!';
}
// або так:
if( is_user_logged_in() ){
echo 'Авторизовано!';
} Використання wp_get_current_user(); Приклади #1 Отримаємо дані поточного користувача Виведемо на екран різні дані про поточного авторизованого користувача:
$current_user = wp_get_current_user();
echo 'Username:'. $current_user->user_login . '<br />';
echo 'email:'. $current_user->user_email . '<br />';
echo 'first name:' . $current_user->user_firstname . '<br />';
echo 'last name: '. $current_user->user_lastname . '<br />';
echo 'Ім'я, що відображається:' . $current_user->display_name . '<br />';
echo 'ID:'. $current_user->ID . '<br />'; #2 Перевіримо, чи авторизований користувач на сайті Перевіримо чи авторизований (залогінен) користувач. Якщо користувача не існує, його ID дорівнюватиме 0:
$current_user = wp_get_current_user();
if( $current_user->exists() ){
// Авторизований.
}
else {
// Не авторизовано.
} Додати свій приклад