禁用Wordpress密码哈希

时间:2017-09-27 18:38:53

标签: wordpress custom-wordpress-pages

我的用户从另一个系统来到我的wordpress网站。这个系统正在向我的Wordpress发送$ _SESSION。

我有如何自动登录的功能。但问题是,我可以从我的数据库中获取哈希密码。我需要禁用密码哈希,我的功能才能正常工作。

    function wpdocs_custom_login() {

        if(isset($_SESSION['usr_email'])){
            $user = get_user_by( 'login', $_SESSION['usr_login'] );

            $creds = array(
                'user_login'    => $user->user_login,
                'user_password' => $user->user_pass,
                'remember'      => true
            );

            $user = wp_signon( $creds, false );

            if ( is_wp_error( $user ) ) {
                echo $user->get_error_message();
            }
        }

}

// Run before the headers and cookies are sent.
add_action( 'after_setup_theme', 'wpdocs_custom_login' );
?>

你能帮帮我吗?

1 个答案:

答案 0 :(得分:0)

如果他们因为在第三方系统中登录而应该登录,那么您应该如何对他们进行身份验证。

$user = get_user_by('login', $_SESSION['usr_login']);
if($user)
{
    clean_user_cache($user->ID);
    wp_set_current_user($user->ID);
    if (wp_validate_auth_cookie() == FALSE)
    {
        wp_clear_auth_cookie();
        wp_set_auth_cookie($user->ID, true);
    }
}

通过这种方式,您可以在不影响安全性的情况下将其登录 相关文档:
clean_user_cache
wp_set_current_user
wp_validate_auth_cookie
wp_clear_auth_cookie
wp_set_auth_cookie