我在fuction.php中爲客戶區使用了自定義登錄函數,但問題是用戶只能在一個頁面中使用。如果用戶轉到另一個頁面,他必須重新登錄等等。如何在wordpress自定義登錄功能中保持所有頁面的用戶登錄?
如何保持所有頁面的用戶登錄而不是一個?
此外,PLZ審查我的登錄功能。如果我正在做對嗎?
PLZ幫助。
function login(){
global $wpdb;
if(isset($_POST['loggingg']) AND !empty($_POST['loggingg'])) {
$email = $wpdb->escape ($_REQUEST['email']);
$pass = $wpdb->escape ($_REQUEST['pass']);
$sql = $wpdb->get_results ("SELECT * FROM wp_users where user_email='$email'");
$numrows = $wpdb->num_rows;
foreach ($sql as $fsql) {
$password = $fsql->user_pass;
$user_id = $fsql->ID;
$username = $fsql->fname;
$remember = $fsql->remember;
}
if($password) {
$login_data = array();
$login_data[] = $username;
$login_data[] = $password;
$login_data[] = $remember = TRUE;
$wpdb->query ("UPDATE wp_users SET useronline='1' WHERE ID='$user_id'");
$user_verify = wp_signon ($login_data, FALSE);
wp_set_auth_cookie ($user_verify, 0, 0);
wp_set_current_user ($user_id, $username);
do_action ('wp_set_current_user');
}
else {
echo "username r password is wrong.If you forgot ur password click <a href='#'>here</a>";
}
}
}
只需將它存儲在使用sql字段的會話變量intead中即可實現所需內容。 – Jerska
@Jerska,我試過了,但它沒有工作 –