解决前台使用wp_signon登录wordpress后无法进入后台的问题

引子: 我们在做一个需要前端登录项目时,为了省事,直接在登录页模板顶部写入了登录逻辑,默认使用了wp_signon登录函数来实现登录,登录后前台使用没有问题,不过在用户进入后台时自动退出了登录状态;

如下是wp_signon函数上的说明:

横线的区域为我们此次解决问题的重点,当我们在init 钩子之前调用时,is_user_loggen_in函数将返回假,刚好我们在处理登录代码的时候直接die掉了,发现问题出现在这里,思路就出来了,根据提示我们使用了wp_set_current_user函数来解决:

代码如下:

我们建议在做项目时使用其他的方式来实现前台登录,避免发生类似问题。

点赞
  1. rimini主题也遇到这个问题,我们在帮XX客户开发前端投稿功能时在前台用到了媒体库,上传文件时自动退出登录,也是由于登录方法使用不正确导致的!被耽搁了1个小时来找问题,最终确定是这个问题。

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注

4 4 =