簡體   English   中英

密碼更改后“出現問題”的WordPress注銷消息

[英]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>

出問題的消息未顯示在頁面上,但在帶有注銷鏈接的wordpress頁面上: 在此處輸入圖片說明

原因是,當您更新密碼時,將清除用戶的cookie(請參閱wp_update_user的文檔)。

然后,在注銷過程中,用戶會話不可用,這會導致您遇到問題。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM