وردپرس

Problem with shortcode to show user name – requires page refresh to work


Replies: 0

The code below is an attempt to create a shortcode to display the user name that I have placed in the header. It mostly works, but when going to a new page, the logged in user is not found by the shortcode, and shows ‘Not logged in’, unless I do a manual refresh.

function custom_shortcode_func()
{
    ob_start();
    $current_user = wp_get_current_user();
    if ( is_user_logged_in() )
    {
        $current_user = wp_get_current_user();
        echo $current_user->display_name;
    }
    else
    {
        echo 'Not logged in';
    }
    $output = ob_get_clean();
    return $output;
}

add_shortcode('current_user', 'custom_shortcode_func');

I have tried messing around with various cache plugins, turning the cache on/off, etc, but did not have any luck.

Thanks in advance for any help or suggestions.

این خبر را در ایران وب سازان مرجع وب و فناوری دنبال کنید

مشاهده پاسخ های این مطلب
———————————————
این مطلب از سایت انجمن وردپرس گردآوری شده است و کلیه حقوق مطلق به انجمن وردپرس می باشد در صورت مغایرت و یا بروز مشکل اطلاع دهید تا حذف گردد

منبع: انجمن وردپرس

دکمه بازگشت به بالا