我想在我的网站上注册后使用gravityform自动激活并登录用户吗?
。我做了一些研究,目前有些指南已经过时了。我尝试了这段代码,目前无法正常工作
lxml
答案 0 :(得分:0)
你试过这个吗?
function pi_gravity_registration_autologin( $user_id, $user_config, $entry, $password ) {
$user = get_userdata( $user_id );
$user_login = $user->user_login;
$user_password = $password;
wp_signon( array(
'user_login' => $user_login,
'user_password' => $user_password,
'remember' => false
), false );
wp_set_current_user( $user_id, $user_login );
wp_set_auth_cookie( $user_id, true, false );
do_action( 'wp_login', $user_login );
}
答案 1 :(得分:0)
这是我的Gravity Forms Auto Login插件中代码的修改版本,用于处理此问题。
add_action( 'gform_user_registered', 'gw_auto_login', 10, 4 );
function gw_auto_login( $user_id, $feed, $entry, $password ) {
$user = new WP_User( $user_id );
$user_data = array(
'user_login' => $user->user_login,
'user_password' => $password,
'remember' => false
);
$result = wp_signon( $user_data );
if( ! is_wp_error( $result ) ) {
global $current_user;
$current_user = $result;
}
}
该插件解释了许多其他可能会干扰自动登录用户的Gravity Forms方案。