is_user_logged_in() WP 2.0.0
Функция проверяет авторизован ли пользователь (вошел ли пользователь под своим логином). Возвращает true, если пользователь авторизован и false, если нет. Условный тег.
Это pluggable функция — т.е. её можно заменить из плагина. Это значит, что она будет работать (подключается) только после подключения всех плагинов, а до этого момента функция еще не определена... Поэтому нельзя вызывать эту и зависящие от неё функции прямо из кода плагина. Их нужно вызывать через хук plugins_loaded или позднее, например хук init.
Замена функции (переопределение) — в плагине можно создать функцию с таким же названием, тогда она заменит текущую функцию.
wp_get_current_user()
Хуков нет.
Возвращает
true, если условие выполняется (пользователь авторизован) и false, если пользователь не авторизован.
Использование
if ( is_user_logged_in() ) { // ... }
Примеры
#1. Пример вывода разного текста, в зависимости от того, залогинен пользователь или нет:
if ( is_user_logged_in() ) { echo 'Вы авторизованы на сайте!'; } else { echo 'Вы всего лишь пользователь!'; }
Код is user logged in:
wp-includes/pluggable.php
VER 4.9.5
Cвязанные функции
Из метки: Пользователи (_user)
Еще из метки: Условные теги (все)
- cat_is_ancestor_of()
- comments_open()
- email_exists()
- has_category()
- has_custom_header()
- has_excerpt()
- has_nav_menu()
- has_post_thumbnail()
- has_shortcode()
- has_tag()
- has_term()
- have_comments()
- have_posts()
- in_category()
- in_the_loop()
- is_404()
- is_active_sidebar()
- is_admin()
- is_admin_bar_showing()
- is_archive()
- is_attachment()
- is_author()
- is_blog_admin()
- is_blog_installed()
- is_category()
- is_child_theme()
- is_comment_feed()
- is_customize_preview()
- is_date()
- is_day()
- is_dynamic_sidebar()
- is_embed()
- is_feed()
- is_front_page()
- is_header_video_active()
- is_home()
- is_local_attachment()
- is_main_query()
- is_month()
- is_multi_author()
- is_multisite()
- is_network_admin()
- is_new_day()
- is_page()
- is_page_template()
- is_paged()
- is_plugin_active()
- is_post_type_archive()
- is_post_type_hierarchical()
- is_preview()
- is_robots()
- is_search()
- is_single()
- is_singular()
- is_ssl()
- is_sticky()
- is_tag()
- is_tax()
- is_taxonomy_hierarchical()
- is_textdomain_loaded()
- is_time()
- is_trackback()
- is_user_admin()
- is_year()
- pings_open()
- post_exists()
- post_password_required()
- shortcode_exists()
- taxonomy_exists()
- term_exists()
- term_is_ancestor_of()
- wp_attachment_is()
- wp_attachment_is_image()
- wp_doing_ajax()
- wp_doing_cron()
- wp_is_mobile()
- wp_is_post_autosave()
- wp_script_is()
А можно сделать что-то типа такого?
Если вошёл админ, он видит надпись "Вы админ!"
Если вошёл журналист, он видит "Вы журналист!"
Если вошёл пользователь, он видит "Вы пользователь!"
И если вошёл гость, то он видит "Вы гость!"
current_user_can()
Спасибо. Данный сайт мне регулярно помогает!
Опишите пожалуйста как использовать это функцию is_user_logged_in в плагине.
Так как выдает ошибку: Fatal error: call to undefined function is_user_logged_in() ...
Можно так:
или добавить перед использованием функции:
А как к примеру будет правильно использовать если мне надо не выполнять php код который ниже проверки залогинен ли пользователь, например:
...
if ( ! is_user_logged_in() ) return;
если пользователь не залогинен то возврящаем return и не выполняем php код который идет ниже.
Её и все действия относительно прав нужно выполнять во время или после события plugins_loaded. Т.е. инициализацию и всю логику плагина вешаешь на это событие и все что после него. Потому что есть плагины которые могут переопределять работу этой функции и проверку на авторизации... Напрямую в файле плагина эту функцию запускать еще рано...
А есть возможность полностью закрыть сайт не авторизованным пользователям?