最新消息:雨落星辰是一个专注网站SEO优化、网站SEO诊断、搜索引擎研究、网络营销推广、网站策划运营及站长类的自媒体原创博客

logout - wp_logout Not Logging Me Out

programmeradmin3浏览0评论

Here is what I'm doing:

wp_logout();
var_dump(is_user_logged_in());

var_dump returns:

bool(true)

Why is wp_logout() not logging me out?

Here is what I'm doing:

wp_logout();
var_dump(is_user_logged_in());

var_dump returns:

bool(true)

Why is wp_logout() not logging me out?

Share Improve this question edited Dec 18, 2012 at 14:37 fuxia 107k39 gold badges255 silver badges459 bronze badges asked Mar 25, 2011 at 21:01 JarredJarred 4983 gold badges7 silver badges13 bronze badges
Add a comment  | 

2 Answers 2

Reset to default 6

wp_logout() calls clear_auth_cookie(), which expires all authorization cookies set. It doesn't change the value of the global $current_user variable. So technically you're still logged in for the duration of the script.

If you're using wp_logout in your own code, its probably best to exit or wp_redirect immediately afterwards.

You can call wp_set_current_user(0) after wp_logout() to manually log the user out instantly, if you need to continue executing PHP but don't want the user to be logged in

I had same problem with my code. I was trying to logout by using wp_logout() but It wasn't working perfectly as per my need because of some code changes so I used wp_destroy_current_session(); and then wp_redirect(); and exit();

    wp_destroy_current_session();
    wp_logout();
    wp_redirect(site_url()); 
    exit();

And it woked for me. you can also use auth_redirect(); instead of wp_redirect(site_url()); and also in my case wp_set_current_user(0); was also not working if used before redirect as it was setting user 0 active

发布评论

评论列表(0)

  1. 暂无评论