WP自动登录公共账号

    在多人共用一个帐号的情况下,有这样一种需求,我不需要知道WordPress的用户名和密码,就能自动登录到公共帐号。这样的需要该如何实现呢?

方法一:wp_signon()

     在主题中使用WordPress内置函数 wp_signon() ,可将用户名和密码直接放到代码中,无需再去要求用户输入,快捷登录,省时省力:

1
2
3
4
5
6
7
8
9
if  ( !is_user_logged_in ( ) )  {
   $creds  =  array ( ) ;
   $creds [ 'user_login' ]  =  'example' ;  // 用户名是example,自行修改
   $creds [ 'user_password' ]  =  'plaintextpw' ;  // 密码是plaintextpw
   $creds [ 'remember' ]  =  true ;
   $user  = wp_signon (  $creds ,  false  ) ;
   if  ( is_wp_error ( $user )  )
     echo  $user -> get_error_message ( ) ;
}

     将以上代码应用到你的WordPress中即可实现自动登录功能

方法二:无密码方式

     现在有种更好的实现方法,不需要知道帐号密码,只需指定用户名即可,实现代码:

1
2
3
4
5
6
7
8
9
10
11
12
if  ( !is_user_logged_in ( ) )  {
   $user_login  =  'example' ;  // 用户名是example,自行修改

   // 获取用户id
   $user  = get_userdatabylogin ( $user_login ) ;
   $user_id  =  $user -> ID ;
  
   // 登录
  wp_set_current_user ( $user_id ,  $user_login ) ;
  wp_set_auth_cookie ( $user_id ) ;
  do_action ( 'wp_login' ,  $user_login ) ;
}
特别说明

     如果将方法一或方法二的代码,直接放到主题的functions.php中,那么只要打开前台任何页面,就会自动登录到你设置的用户名下。本文只是提供自动登录的方法,至于是放到单独一个php文件,还是加token验证… 怎么用就得看具体的需求了。 来自:成都婚庆公司 www.daixhunli.com

转载于:https://www.cnblogs.com/chengducrj/archive/2013/01/30/2882823.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值