[英]WordPress logout after password change “something went wrong” message
我使用表單和wp_update_user函數讓用戶在WordPress前端中更改密碼。 為此,我使用一個執行wp_update_user的ajax函數:
/* CHANGE PASSWORD OF USER */
if ( !empty($pass1 ) && !empty( $pass2 ) ) {
if ( $pass1 == $pass2 ) {
wp_update_user( array( 'ID' => $userID, 'user_pass' => esc_attr( $pass2 ) ) );
echo "<div class='message-hub-success'>Passsword changed!</div>";
} else {
echo "<div class='message-hub-error'>The passwords you entered do not match. Your password was not updated.</div>";
}
}
密碼更改按預期工作。 但是,當用戶在更改密碼后單擊注銷鏈接時,出現錯誤“出了點問題”,而不是注銷和重定向功能。 我的注銷鏈接:
<a href="<?php echo wp_logout_url( home_url() ); ?>">Logout</a>
原因是,當您更新密碼時,將清除用戶的cookie(請參閱wp_update_user的文檔)。
然后,在注銷過程中,用戶會話不可用,這會導致您遇到問題。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.