Перенаправить, если не войти в систему?

Я пробовал это, чтобы перенаправить людей, которые не вошли на определенную страницу. В конечном итоге не должно иметь значения, какую страницу переднего края они посещают, но следует перенаправить на любую страницу, выбранную в качестве целевой страницы (которую я предполагаю, будет URL-адресом в wp_redirect). Мне все еще нужен доступ к wp-login и приборной панели и т. Д. …

Я поместил следующий код в мои functions.php, но не работал.

function my_redirect() { if ( $_SERVER['HTTP_HOST'].$_SERVER['REQUEST_URI'] == 'mybigfatsite.com/' ) { if ( ! is_user_logged_in() ) { wp_redirect( 'mybigfatsite.com/landing/' ); exit; } } } add_action( 'init', 'my_redirect' ); 

Спасибо за любую помощь!

Функция is_login_page() берется здесь

 function is_login_page() { if ( $GLOBALS['pagenow'] === 'wp-login.php' && ! empty( $_REQUEST['action'] ) && $_REQUEST['action'] === 'register' ) return true; return false; } function my_redirect() { //if you have the page id of landing. I would tell you to use if( is_page('page id here') instead //Don't redirect if user is logged in or user is trying to sign up or sign in if( !is_login_page() && !is_admin() && !is_user_logged_in()){ //$page_id is the page id of landing page if( !is_page($page_id) ){ wp_redirect( get_permalink($page_id) ); exit; } } } add_action( 'template_redirect', 'my_redirect' );