@80689248440

Почему не срабатывает редирект?

Подскажите почему не срабатывает редирект и как это исправить - перепробовал что мог (lаже залогинивать пользователя по id) - в случае удачи нужно перекидывать пользователя на страницу my-account желательно чтоб он при этом он был залогинен и сессия не разрушалась.
/**
 * Template Name: Сменить пароль
*/
if ( !is_user_logged_in() ) {
	header( 'Location: /my-account/' );
}
get_header(); 

$current_user = wp_get_current_user();

global $current_user, $wp_roles;
get_currentuserinfo();

require_once( ABSPATH . WPINC . '/registration.php' );

if ( 'POST' == $_SERVER['REQUEST_METHOD'] && !empty( $_POST['action'] ) && $_POST['action'] == 'update-user' ) {

    if ( !empty($_POST['pass1'] ) && !empty( $_POST['pass2'] ) ) {
        if ( $_POST['pass1'] == $_POST['pass2'] ){
            wp_update_user( array( 'ID' => $current_user->id, 'user_pass' => esc_attr( $_POST['pass1'] ) ) );
        }else{
            $errors = 'пароли не одинаковы';
		}
    } else {
		$errors = 'заполненны не все поля';
	}

    if ( !$errors ) {

		//wp_logout();
		
		$redirect = "/my-account/";
		
		wp_redirect( wp_logout_url( $redirect ) );
    }
}
                    <?php if ( $errors ){
						echo '<ul class="woocommerce-error"><li><strong>ERROR</strong>: ' . $errors . '</li></ul>'; 
					}
					?>
                    <form method="post" id="adduser" action="<?php the_permalink(); ?>">
<p class="form-row form-row-first" style="float: none;">
		<label for="form-password">Новый пароль <span class="required">*</span></label>
		<input class="input-text" name="pass1" type="password" id="pass1" required>
</p>
<p class="form-row form-row-first" style="float: none;">
		<label for="pass2">Подтвердите пароль <span class="required">*</span></label>
		<input class="input-text" name="pass2" type="password" id="pass2" required>
</p>

         
                        <p class="form-submit">
                            
                            <input name="updateuser" type="submit" id="updateuser" class="button" value="Сохранить пароль" />
                            <?php wp_nonce_field( 'update-user' ) ?>
                            <input name="action" type="hidden" id="action" value="update-user" />
                        </p>
                     
                    </form>
  • Вопрос задан
  • 642 просмотра
Пригласить эксперта
Ответы на вопрос 1
wppanda5
@wppanda5 Куратор тега WordPress
WordPress Mедведь
if ( ! is_user_logged_in() ) {
    wp_redirect(home_url(/my-account/) ,303);
    exit;
}
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы