Restrict frontend access to logged-in users only. Visitors are automatically redirected to the WordPress login page before accessing posts, pages, or other frontend content. Useful for private membership, staging, or internal websites.
add_action( 'template_redirect', 'wpfolks_force_login_sitewide' );
function wpfolks_force_login_sitewide() {
if ( is_user_logged_in() ) {
return;
}
if (is_admin() || wp_doing_ajax() || is_page( 'login' ) || is_page( 'register' )) {
return;
}
auth_redirect();
}