* the admin interface and parts of the external site, an event report will be * sent to the API service and an email notification to the administrator of the * site. * * @see Class SucuriScanHook */ if (class_exists('SucuriScanHook')) { $sucuriscan_hooks = array('add_attachment', 'add_link', 'create_category', 'delete_post', 'delete_user', 'login_form_resetpass', 'private_to_published', 'publish_page', 'publish_phone', 'publish_post', 'retrieve_password', 'switch_theme', 'user_register', 'wp_insert_comment', 'wp_login', 'wp_login_failed', 'wp_trash_post', 'xmlrpc_publish_post'); if (SucuriScanOption::is_enabled(':xhr_monitor')) { $sucuriscan_hooks[] = 'all'; } foreach ($sucuriscan_hooks as $hook_name) { $hook_func = 'SucuriScanHook::hook_' . $hook_name; add_action($hook_name, $hook_func, 50, 5); } if (SucuriScan::runAdminInit()) { add_action('admin_init', 'SucuriScanHook::hook_undefined_actions'); } add_action('login_form', 'SucuriScanHook::hook_undefined_actions'); } else { SucuriScanInterface::error('Function call interceptors are not working properly.'); } /** * Display a message if the plugin is not activated. * * Display a message at the top of the administration panel with a button that * once clicked will send the site's email and domain name to the Sucuri API * service where an API key will be generated for the site, this key will allow * the plugin to execute the filesystem scans, the project integrity, and the * email notifications. */