2014-02-25 5 views
0

Я делаю сайт с WordPress как CMS (установленный на нашем сервере, а не WordPress.com). Я хочу, чтобы страница учетной записи для перенаправления на страницу входа в систему, если пользователь не вошел в систему Там в пользовательский шаблон для страницы счета (account.php) и в верхней части я поместил этот код:.Wordpress Переадресация на логин

if(!is_user_logged_in()){ 
    wp_redirect('www.mypage.com/login'); 
    die(); 
} 

Когда я обновляю и сохраняю страницу account.php, я захожу на панель инструментов WordPress и обновляю страницу там. Когда я перехожу к просмотру страницы учетной записи (обновляя страницу или нажав «страницу просмотра»), она обычно перенаправляет первый раз на страницу входа. Ура! Кажется, все хорошо, за исключением случаев, когда я нажимаю ссылку на учетную запись, я ожидаю, что она приведет меня на страницу входа, поскольку я все еще не вошел в систему, но в любом случае меня переводит на страницу учетной записи ... Я пробовал в режиме InCognito чтобы быть уверенным, что я не вошел в систему. Я помещаю эхо внутри этого оператора if, и он достигает его просто отлично, поэтому я знаю, что он правильно обнаруживает, что я не вошел в систему.

Кто-нибудь знает, почему это перенаправление при первой загрузке, но не при переходе на эту страницу? Как я могу это сделать, так что невозможно просмотреть account.php до входа в систему?

ответ

0

выше должна быть как

if(!is_user_logged_in()){ 
    wp_redirect('www.mypage.com/login'); 
    die(); 
} 

вам не хватает на is_user_logged_in * () *.

проверить этот Bracks его функция;)

+0

К сожалению я Freehand напечатал свой пост, у меня не был синтаксической ошибка в реальной сделке. –

+0

, то он is_user_logged_in() должен работать отлично. ваш код выше 100%. если у вас нет другой проблемы. это может быть постоянная ссылка, которую вы используете для перенаправления. это ваш код в верхней части шаблона. отправьте свой код активации, который вы получаете URL-адрес переадресации. – anstrangel0ver

+0

Проблема не в том, что user_logged_in не работает, проблема в том, что перенаправление работает, но только один раз. Я не уверен, правильно ли сформулировал это. –

Смежные вопросы