if (defined('_g_force-login')) { // $splash_page = "/splash-page"; // can use conditional tags - https://developer.wordpress.org/themes/references/list-of-conditional-tags/ function my_forcelogin_bypass( $bypass, $visited_url ) { if ( is_page('login') ) { $bypass = true; } return $bypass; } add_filter( 'v_forcelogin_bypass', 'my_forcelogin_bypass', 10, 2 ); function my_forcelogin_bypass_url( $bypass ) { // Get visited URL without query string $url_path = preg_replace('/\?.*/', '', $_SERVER['REQUEST_URI']); // Allow URL if ( '/page-name/' === $url_path ) { $bypass = true; } // Allow filename URL if ( '/page-name.php' === $url_path ) { $bypass = true; } return $bypass; } function my_forcelogin_bypass_query( $bypass, $visited_url ) { $allowed = array( home_url( '/page-name/?' . $_SERVER['QUERY_STRING'] ), home_url( '/page-name.php?' . $_SERVER['QUERY_STRING'] ), ); if ( ! $bypass ) { $bypass = in_array( $visited_url, $allowed ); } return $bypass; } function my_forcelogin_bypass_query_value( $bypass ) { // Allow URL if query string 'parameter' exists if ( isset( $_GET['parameter'] ) ) { $bypass = true; } // Allow URL where 'value' is equal to query string 'parameter' if ( $_GET['parameter'] == 'value' ) { $bypass = true; } return $bypass; } function my_forcelogin_bypass_directory( $bypass ) { // Get visited URL without query string $url_path = preg_replace('/\?.*/', '', $_SERVER['REQUEST_URI']); // Allow any page URL within the specified directory if ( in_array( 'page-directory', explode( '/', $url_path ) ) ) { $bypass = true; } return $bypass; } }