is_user_logged_in()
این تابع مشخص میکند که کاربر حاضر در سایت به حساب کاربری خود وارد (Login) شده است یا خیر.
توضیحات:
شما برای انجام دادن برخی کارها در وردپرس باید وضعیت ورود(Login) کاربر را بررسی نمایید تا بتوانید براساس شرایط فعالیت های مورد نظر را انجام دهید.
مقدار بازگشتی:
این تابع یک مقدار از نوع Boolean را برمی گرداند.(true/false)
نحوه استفاده:
به صورت معمول توابعی که مقداری از نوع درست یا غلط (Boolean) را برمیگرداند با دستورات شرطی قابل استفاده می باشد.به مثال زیر دقت کنید:
if ( is_user_logged_in() ): echo 'Welcome, registered user!'; else: echo 'Welcome, visitor!'; endif;
در نمونه کد بالا، با استفاده از دستور شرطی if وضعیت ورود کاربر بررسی میشود، در صورتی که کاربر عضو سایت باشد و به حساب کاربری خود وارد شده باشد، این دستور مقدار true را برمیگرداند و پیام Welcome, registered user را نمایش میدهد و در صورتی که به سایت وارد نشده باشد Welcome, visitor را برمیگرداند.
منبع:
File: wp-includes/pluggable.php
function is_user_logged_in() { $user = wp_get_current_user(); return $user->exists(); }
چند نمونه از استفاده تابع is_user_logged_in()
مثال 1: نمایش پیغام متفاوت به کاربر با توجه به وضعیت ورود کاربر
if ( is_user_logged_in() ) { echo 'Welcome, registered user!'; } else { echo 'Welcome, visitor!'; }
مثال 2:دقت داشته باشید که در وردپرس اگر این تابع را در موقعیت مناسب استفاده نکنید با خطا مواجه میشوید، برای حل این مشکل می توانید به شکل زیر کد را استفاده و کنید و آنرا به هوک init متصل کنید.
function example_function() { if ( is_user_logged_in() ) { // code } } add_action('init', 'example_function');
مثال 3:نمایش یک پیغام شخصی به کاربر
/** * Give a personalized message for logged in users and a generic one for anonymous visitors */ function wpdocs_personal_message_when_logged_in() { if ( is_user_logged_in() ) { $current_user = wp_get_current_user(); printf( 'Personal Message For %s!', esc_html( $current_user->user_firstname ) ); } else { echo( 'Non-Personalized Message!' ); } } add_action( 'loop_start', 'wpdocs_personal_message_when_logged_in' );
مثال 4: قرار دادن لینک ورود در هر بخش از قالب سایت
if ( is_user_logged_in() ) { < a href = " echo wp_logout_url(); ">Logout } else { < a title= " Members Area Login" href = " /wp-login.php " rel=" home ">Members Area }