有没有可能通过查看设置的cookie来判断用户是否登录了WordPress?

时间:2011-10-09 作者:cwd

是否可以通过查看网站上设置的cookie来判断用户是否登录到Wordpress?如果没有,我如何为登录成功和注销操作添加挂钩,并设置自己的cookie?

1 个回复
最合适的回答,由SO网友:Brooke. 整理而成

您可以使用Javascript

<script type="text/javascript">
function getCookie(c_name)
{
var i,x,y,ARRcookies=document.cookie.split(";");
for (i=0;i<ARRcookies.length;i++)
{
  x=ARRcookies[i].substr(0,ARRcookies[i].indexOf("="));
  y=ARRcookies[i].substr(ARRcookies[i].indexOf("=")+1);
  x=x.replace(/^\\s+|\\s+$/g,"");
  if (x==c_name)
    {
    return unescape(y);
    }
  }
}

var logged_in=getCookie("wordpress_logged_in_[HASH]");
  if (logged_in!=null && logged_in!="")
  {
  alert("You are logged in!");
  }
else
  {
   alert("You are logged out!");
  }
</script>
注意:可以找到Wordpress登录的cookie信息here. 您需要弄清楚哈希是什么,并可能使用regex进行哈希。(这未经测试,但应该有效)

JS cookie source

结束

相关推荐

在将ADD_ROLE添加到unctions.php并创建用户后,无法登录到admin

我正在尝试添加一个特定的角色来管理我的自定义帖子类型,但我在一开始就陷入了困境。我添加了add_role() 功能。php文件如下:add_role(\'resourcerer\', \'Resourcerer\', array(\'read_internal_jobs\')); 并创建了一个具有该角色的用户。但是,当我尝试使用新用户登录时,会出现一个错误You do not have sufficient permissions to access this page. 我不知道我做错了什么: