function __construct() { //Add tasks that need to be executed at wp-loaded time global $aio_wp_security; //Handle the rename login page feature if ($aio_wp_security->configs->get_value('aiowps_enable_rename_login_page') == '1') { include_once AIO_WP_SECURITY_PATH . '/classes/wp-security-process-renamed-login-page.php'; $login_object = new AIOWPSecurity_Process_Renamed_Login_Page(); AIOWPSecurity_Process_Renamed_Login_Page::renamed_login_init_tasks(); } //For site lockout feature (ie, maintenance mode). It needs to be checked after the rename login page if ($aio_wp_security->configs->get_value('aiowps_site_lockout') == '1') { if (!is_user_logged_in() && !current_user_can('administrator') && !is_admin() && !in_array($GLOBALS['pagenow'], array('wp-login.php'))) { self::site_lockout_tasks(); } } }
function __construct() { global $aio_wp_security; if ($aio_wp_security->configs->get_value('aiowps_remove_wp_generator_meta_info') == '1') { add_filter('the_generator', array(&$this, 'remove_wp_generator_meta_info')); } //For the cookie based brute force prevention feature $bfcf_secret_word = $aio_wp_security->configs->get_value('aiowps_brute_force_secret_word'); if (isset($_GET[$bfcf_secret_word])) { //If URL contains secret word in query param then set cookie and then redirect to the login page AIOWPSecurity_Utility::set_cookie_value($bfcf_secret_word, "1"); AIOWPSecurity_Utility::redirect_to_url(AIOWPSEC_WP_URL . "/wp-admin"); } //For user unlock request feature if (isset($_POST['aiowps_unlock_request']) || isset($_POST['aiowps_wp_submit_unlock_request'])) { nocache_headers(); remove_action('wp_head', 'head_addons', 7); include_once AIO_WP_SECURITY_PATH . '/other-includes/wp-security-unlock-request.php'; exit; } if (isset($_GET['aiowps_auth_key'])) { //If URL contains unlock key in query param then process the request $unlock_key = strip_tags($_GET['aiowps_auth_key']); AIOWPSecurity_User_Login::process_unlock_request($unlock_key); } //For 404 IP lockout feature if ($aio_wp_security->configs->get_value('aiowps_enable_404_IP_lockout') == '1') { if (!is_user_logged_in() || !current_user_can('administrator')) { $this->do_404_lockout_tasks(); } } //For login captcha feature if ($aio_wp_security->configs->get_value('aiowps_enable_login_captcha') == '1') { if (!is_user_logged_in()) { add_action('login_form', array(&$this, 'insert_captcha_question_form')); } } //For lost password captcha feature if ($aio_wp_security->configs->get_value('aiowps_enable_lost_password_captcha') == '1') { if (!is_user_logged_in()) { add_action('lostpassword_form', array(&$this, 'insert_captcha_question_form')); add_action('lostpassword_post', array(&$this, 'process_lost_password_form_post')); } } //For registration page captcha feature if ($aio_wp_security->configs->get_value('aiowps_enable_registration_page_captcha') == '1') { if (!is_user_logged_in()) { add_action('register_form', array(&$this, 'insert_captcha_question_form')); } } //For comment captcha feature if ($aio_wp_security->configs->get_value('aiowps_enable_comment_captcha') == '1') { add_action('comment_form_after_fields', array(&$this, 'insert_captcha_question_form'), 1); add_action('comment_form_logged_in_after', array(&$this, 'insert_captcha_question_form'), 1); add_filter('preprocess_comment', array(&$this, 'process_comment_post')); } //For rename login page feature if ($aio_wp_security->configs->get_value('aiowps_enable_rename_login_page') == '1') { include_once AIO_WP_SECURITY_PATH . '/classes/wp-security-process-renamed-login-page.php'; $login_object = new AIOWPSecurity_Process_Renamed_Login_Page(); AIOWPSecurity_Process_Renamed_Login_Page::renamed_login_init_tasks(); } //For site lockout feature (ie, maintenance mode) if ($aio_wp_security->configs->get_value('aiowps_site_lockout') == '1') { if (!is_user_logged_in() && !current_user_can('administrator') && !is_admin() && !in_array($GLOBALS['pagenow'], array('wp-login.php', 'wp-register.php'))) { $this->site_lockout_tasks(); } } //For feature which displays logged in users $this->update_logged_in_user_transient(); //For block fake googlebots feature if ($aio_wp_security->configs->get_value('aiowps_enable_block_fake_googlebots') == '1') { include_once AIO_WP_SECURITY_PATH . '/classes/wp-security-bot-protection.php'; AIOWPSecurity_Fake_Bot_Protection::block_fake_googlebots(); } //For 404 event logging if ($aio_wp_security->configs->get_value('aiowps_enable_404_logging') == '1') { add_action('wp_head', array(&$this, 'check_404_event')); } //Add more tasks that need to be executed at init time }