Пользовательская форма входа – перенаправление пользователя на страницу входа в систему, если не вошел в систему

У меня есть встроенная форма для входа в систему, как указано здесь, и вставляйте эту пользовательскую форму входа на страницу WordPress через [dm_login_form] .

После этого у меня есть интегрированный плагин управления доступом, который позволяет мне перенаправлять пользователя на страницу входа, если он не вошел в систему.

Мне нужно перенаправить пользователя на мою пользовательскую страницу входа всякий раз, когда сообщение в блоге post/page осуществляется non-authenticated пользователем. Он переходит в цикл перенаправления, если я предоставляю свой пользовательский URL страницы входа.

Для аутентификации admin я использую URL wp-login.php адрес wp-login.php по умолчанию, а другие пользователи используют пользовательский URL страницы входа.

Код в функции.php для перенаправления

 add_action('template_redirect', 'redirect_user'); function redirect_user(){ global $current_user; if (!is_user_logged_in()){ $return_url = site_url().'/login'; wp_redirect($return_url); exit(); } } 

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

Благодарю.

Solutions Collecting From Web of "Пользовательская форма входа – перенаправление пользователя на страницу входа в систему, если не вошел в систему"

Вот функция перенаправления не пользователей на страницу входа.

 function redirect_user() { if ( ! is_user_logged_in() && ! is_page( 'login' ) ) { $return_url = esc_url( home_url( '/login/' ) ); wp_redirect( $return_url ); exit; } } add_action( 'template_redirect', 'redirect_user' );