Intereting Posts
Причины, по которым все миниатюры не работают Код сценария в текстовом виде не отображается Невозможно проверить вариант «Разрешить пользователям отправлять комментарии по новым статьям» Force HTTPS 301 перенаправление с помощью крючка Принуждение термина / таксономии на всех должностях CPT Ограничивает количество отображаемых терминов? Является ли это возможным? Вход Ajax без перенаправления / перезагрузки Как использовать «while» и «end while» внутри echo do_shortcode с помощью ACF Repeater? Показывать ошибочные сообщения о неправильном имени пользователя / пароле в пользовательской форме входа? Как использовать плагин jQuery пользовательский naver nav вопрос с участием ajax Что такое глобальная переменная $ current_screen? Фильтр или Крюк, чтобы поймать предварительную рендеринг сообщений Удалите wp-admin из URL-адреса Отключить посещение сайта и входа пользователя, за исключением определенного пользователя

Перенаправить страницу входа по умолчанию на пользовательскую страницу

Я хочу перенаправить страницу входа в WordPress по умолчанию на пользовательскую страницу входа. Я добавляю этот код в плагин:

if (!is_user_logged_in()) { wp_redirect( wp_login_url( $redirect ) ); exit(); } 

Но он дает эту ошибку:

 Fatal error: Call to undefined function is_user_logged_in() 

Почему это происходит и как я могу это исправить? Благодарю.

Solutions Collecting From Web of "Перенаправить страницу входа по умолчанию на пользовательскую страницу"

Как правило, вам нужно сказать WordPress, когда нужно что-то делать. Если вы просто уронили свой код в плагине, то вы не дадите WordPress информацию о том, когда выполнять ваши команды, и вы рискуете функциями, которые вам еще предстоит определить.

Прямо сейчас, ваш код говорит: «Если кто-то не вошел в систему, всегда перенаправляйте его на обычный URL-адрес для входа», что противоречит тому, как это звучит, как вы пытаетесь сделать.

Попробуйте функцию в вашем файле плагина и привяжите ее к крючку . Вот пример:

 function wpse_177404_login_screen_redirect() { global $pagenow; if ($pagenow == 'wp-login.php' && !is_user_logged_in()) { wp_redirect('http://your-site.com/custom-login/'); exit; } } add_action('init', 'wpse_177404_login_screen_redirect'); 

При этом вы сообщаете WordPress, чтобы проверить, является ли страница wp-login.php для каждой загрузки, и если кто-то не вошел в систему, перенаправляйте их на новую страницу по вашему выбору.

Будьте осторожны, когда вы перегружаете эти типы функциональных возможностей Core, так как это также влияет на сброс и регистрацию пароля, и может быть очень легко расстроить ваших пользователей, выполняя такие вещи.