Bana özel giriş kutusuna Nasıl eklemek için işlev Hatırla?

2 Cevap php

Benim tema, giriş için özel sayfa var. Functions.php de oturum açma işlevi bu gibi

   function log_in($username, $password) {

    $user = parse_user($username);

    $username = $username;
    $password = $password;

    if(isEmptyString($username)) return new WP_Error('username', 'required');
    if(isEmptyString($password)) return new WP_Error('password', "required");
    if(!wp_check_password( $password, $user->user_pass ) ) return new WP_Error('wrong_password', "wrong");

    wp_set_auth_cookie($user->ID, $remember);
    wp_login($username, $password);

    redirect_profile();

}

function parse_user($info = null, $return = 'object') {
    if ( is_null( $info ) ) {
        global $current_user;
        if ( empty( $current_user->ID ) ) return null;
        $info = get_userdata( $current_user->ID );
    }
    elseif ( empty( $info ) ) {
        return null;
    }
    if( $return == 'ID' ) {
        if ( is_object( $info ) ) return $info->ID;
        if ( is_numeric( $info ) ) return $info;
    }
    elseif( $return == 'object' ) {
        if ( is_object( $info ) && $info->ID) return $info;
        if ( is_object( $info )) return get_userdata( $info->ID );
        if ( is_numeric( $info ) ) return get_userdata( $info );
        if ( is_string( $info ) ) return get_userdatabylogin( $info );
    }
    else {
        return null;
    }
}

Ben onlar logout kadar bana her zaman kaydedilir kullanıcı için checkbox hatırlamak eklemek istiyorum. I bu nasıl ekleyebilirsiniz? Lütfen bana yardım edin. Teşekkür ederim.

2 Cevap

"Add a login form on your WordPress Theme" (including remember me functionality): http://www.wprecipes.com/add-a-login-form-on-your-wordpress-theme

Ayrıca: http://www.problogdesign.com/how-to/how-to-create-a-wordpress-login-form-overlay/

vs ..

Düğmeler genellikle dahili çerez ayarları için sadece basit bir çimdik vardır "beni hatırla". Bunun yerine tarayıcı exitted zaman silinir bir oturum çerez, bir oturum cookie (vb .. bir gün, bir ay, bir sene,) bazı gelecekte sona erme noktası olur "beni hatırla" yani tarayıcı kapalı oluyor sonra devam edeceğiz .

Pseudo-code, sen olurdu:

if (form_value('remember_me') == 'yes) {
     set_long_term_cookie();
} else {
     set_session_cookie();
}