Перенаправление Пользователя на Целевую страницу в PHP WordPress

#php #wordpress #authentication #settings

Вопрос:

Я пытаюсь создать гостевого пользователя для посетителей, у которых нет учетной записи на сайте. Следующий код работает нормально, однако пользователи перенаправляются на домашнюю страницу, а не на целевую страницу. Моя цель-перенаправить пользователей туда, куда они направляются.

 if(!is_user_logged_in()){
        $creds = array();
        $creds['user_login'] = 'test@test.com';
        $creds['user_password'] = '123456';
        $creds['remember'] = true;
        $user = wp_signon( $creds, false );
        wp_redirect(home_url());
    }
 

Комментарии:

1. смотрите этот ответ , чтобы узнать, как получить URL-адрес текущей страницы.

2. Я попробовал большинство решений из предложенного вами поста, но ни одно из них не сработало для меня. Я даю ссылку на страницу, если вы хотите поэкспериментировать: ezcliparts.com/downloads/seamless-geometric-digital-paper-pattern-abstract-hand-drawn-background/

Ответ №1:

Очень хорошо, что я не могу экспериментировать с php — кодом на вашем сайте. 😀 попробуйте это:

 if(!is_user_logged_in()){
        global $wp;
        $this_page = add_query_arg( $wp->query_vars, home_url( $wp->request ) );
        $creds = array();
        $creds['user_login'] = 'test@test.com';
        $creds['user_password'] = '123456';
        $creds['remember'] = true;
        $user = wp_signon( $creds, false );
        wp_redirect($this_page);
    }
 

Комментарии:

1. Это сработало как сумасшедшее. Спасибо