wp_set_auth_cookie没有在wordpress中工作

时间:2016-02-11 08:28:07

标签: wordpress

我想在满足某些要求时设置用户记录,并且我正在使用以下功能来设置cookie,其中我将用户的id作为参数传递,该参数是根据wp_users表。但不知何故,它没有设置用户登录。缺少什么,我应该做什么来设置用户登录,我也想在某些条件下注销用户。这两个功能都不起作用。

wp_set_auth_cookie(1)
wp_clear_auth_cookie();

2 个答案:

答案 0 :(得分:2)

在将所有标题发送到浏览器之后,您最有可能调用这些函数,因此实际上您无法将登录的cookie发送到浏览器。

最常见的错误是您尝试在呈现短代码时登录用户 - 这在大多数情况下都不起作用(某些服务器配置允许这样做,但最好不要依赖它)。 / p>

您可以挂钩init操作并将逻辑移到那里,同时调用wp_set_auth_cookie()wp_clear_auth_cookie()

答案 1 :(得分:0)

使用以下代码

wp_set_current_user($user_id); 
if (wp_validate_auth_cookie()==FALSE)
{
    wp_set_auth_cookie($user_id, true, false);
}

参考wp_set_auth_cookiewp_set_current_user