Aqui estão 2 exemplos que você precisará modificar um pouco para que ele funcione para suas necessidades específicas.
add_action( 'admin_init', 'redirect_non_logged_users_to_specific_page' );
function redirect_non_logged_users_to_specific_page() {
if ( !is_user_logged_in() && is_page('add page slug or ID here') && $_SERVER['PHP_SELF'] != '/wp-admin/admin-ajax.php' ) {
wp_redirect( 'http://www.example.dev/page/' );
exit;
}
}
Coloque isso no arquivo de funções do tema filho, altere o ID da página ou o espaçador e o URL de redirecionamento.
Você também pode usar um código como este:
add_action( 'template_redirect', 'redirect_to_specific_page' );
function redirect_to_specific_page() {
if ( is_page('slug') && ! is_user_logged_in() ) {
wp_redirect( 'http://www.example.dev/your-page/', 301 );
exit;
}
}
Você pode adicionar a mensagem diretamente à página ou se quiser exibir a mensagem para todos os usuários não conectados, adicione-a ao código .