WordPress的通过Facebook登录插件创建用户 [英] wordpress create user from facebook login plugin

查看:124
本文介绍了WordPress的通过Facebook登录插件创建用户的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

如何从我的wordpress主题中调用此功能.当发表评论的人通过Facebook登录功能登录时应该被调用.

How do I call this function from my wordpress theme. It is supposed to be called when the one who comments logs in via facebook login function.

function myfb_do_login() {
global $wpdb;

// cookie
$cookie = get_facebook_cookie();
// get user data
 $fbuser = get_facebook_user($cookie);
 $username = sanitize_user($fbuser->first_name);

// put everything in nice array
$userdata = array(
  'user_pass'       =>  wp_generate_password(),
  'user_login'  =>  $username,
  'user_nicename'   =>  $username,
  'user_email'  =>  $fbuser->email,
  'display_name'    =>  $fbuser->name,
  'nickname'        =>  $username,
  'first_name'  =>  $fbuser->first_name,
  'last_name'       =>  $fbuser->last_name,
  'role'            =>  'subscriber'
);

// create new user
$new_user = wp_insert_user($userdata);

// set the auth cookie to current user id
wp_set_auth_cookie($new_user, true);

// log the user in
wp_set_current_user($new_user);

// do redirect  here
wp_safe_redirect(get_permalink(). '#response');
}

推荐答案

如果手边有用户信息,请创建一个用户数据数组,然后将其传递给wp_insert_user,其中userdata应该包含的内容是

if you have user info at hand, create an array of user data an pass it to wp_insert_user, what userdata should contains refers to wp_insert_usercodex.

代码示例:

//insert new user to db
$wpuid=wp_insert_user($userdata);
//set the auth cookie to current user id
wp_set_auth_cookie($wpuid,true);
//log the user in
wp_set_current_user($wpuid);
//do redirect  here....
wp_safe_redirect($location);

这篇关于WordPress的通过Facebook登录插件创建用户的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆