WordPress.org

Make WordPress Core

Ticket #12282: redirect.patch

File redirect.patch, 1.2 KB (added by usermrpapa, 8 years ago)
  • wp-login.php

     
    422422case 'rp' :
    423423        $errors = reset_password($_GET['key'], $_GET['login']);
    424424
    425         if ( ! is_wp_error($errors) ) {
    426                 wp_redirect('wp-login.php?checkemail=newpass');
     425        if ( !is_wp_error($errors) ) {
     426                if ( isset( $_REQUEST['redirect_to'] ) ) {
     427                        wp_safe_redirect($_REQUEST['redirect_to']);
     428                } else {
     429                        wp_redirect('wp-login.php?checkemail=newpass');
     430                }
    427431                exit();
    428432        }
    429433
     
    452456                $user_login = $_POST['user_login'];
    453457                $user_email = $_POST['user_email'];
    454458                $errors = register_new_user($user_login, $user_email);
    455                 if ( !is_wp_error($errors) ) {
    456                         wp_redirect('wp-login.php?checkemail=registered');
    457                         exit();
    458                 }
     459        if ( !is_wp_error($errors) ) {
     460                if ( isset( $_REQUEST['redirect_to'] ) ) {
     461                        wp_safe_redirect($_REQUEST['redirect_to']);
     462                } else {
     463                        wp_redirect('wp-login.php?checkemail=registered');
     464                }
     465                exit();
     466        }
    459467        }
    460468
    461469        login_header(__('Registration Form'), '<p class="message register">' . __('Register For This Site') . '</p>', $errors);