/** * optimizeMember's Security Gate ( protects WordPress content ). * * @package optimizeMember\Security * @since 3.5 * * @attaches-to ``add_action("wp");`` * * @return null May redirect a browser *(exiting script execution)*, when/if content is NOT available to the current User/Member. */ public static function security_gate() { do_action("ws_plugin__optimizemember_before_security_gate", get_defined_vars()); /**/ if (is_category()) { /* Categories & other inclusives. */ c_ws_plugin__optimizemember_catgs::check_catg_level_access(); } else { if (is_tag()) { /* Post/Page Tags & other inclusives. */ c_ws_plugin__optimizemember_ptags::check_ptag_level_access(); } else { if (is_single()) { /* All Posts & other inclusives. */ c_ws_plugin__optimizemember_posts::check_post_level_access(); } else { if (is_page()) { /* All Pages & other inclusives. */ c_ws_plugin__optimizemember_pages::check_page_level_access(); } else { /* Else, we simply look at URIs & other inclusives. */ c_ws_plugin__optimizemember_ruris::check_ruri_level_access(); } } } } /**/ do_action("ws_plugin__optimizemember_after_security_gate", get_defined_vars()); /**/ return; /* Return for uniformity. */ }