Automatic WordPress security: local firewall, malware and file-integrity scanning, vulnerability protection, quarantine, scheduled backups, an optional page cache, and automatic global threat intelligence. See README.md for installation, update, and uninstall instructions.
47 lines
2.0 KiB
PHP
47 lines
2.0 KiB
PHP
<?php
|
|
/**
|
|
* Plugin Name: ARGUS WordPress Defence
|
|
* Plugin URI: https://git-cloud.weboria.eu/Weboria/argus-wp-defence
|
|
* Description: Standalone WordPress security: local WAF, malware & integrity scanning, vulnerability intelligence, and a deterministic ban/policy engine. Works fully offline; optionally connects to ARGUS Cloud for richer intelligence and cross-asset correlation.
|
|
* Version: 1.0.0
|
|
* Requires at least: 6.0
|
|
* Requires PHP: 7.4
|
|
* Author: ARGUS
|
|
* License: GPL-2.0-or-later
|
|
* License URI: https://www.gnu.org/licenses/gpl-2.0.html
|
|
* Text Domain: argus-wordpress-defence
|
|
*
|
|
* Architecture reference: argus-appliance/docs/adr/0053-argus-wordpress-defence.md
|
|
*
|
|
* This is the REGULAR plugin entry point -- the admin UI, settings, and
|
|
* anything that doesn't need to run before WordPress core boots lives
|
|
* here. The enforcement core (WAF/ban/policy) is installed separately as
|
|
* a Must-Use plugin (see includes/class-argus-mu-installer.php and
|
|
* mu-loader/argus-mu-core.php) so it keeps running even if this regular
|
|
* plugin is deactivated from wp-admin -- ADR-0053 §13.1's self-protection
|
|
* design. This file still loads the same enforcement classes for the
|
|
* admin UI to read state from, and as the Tier-1 fallback hook
|
|
* (plugins_loaded) on any host where the MU-plugin install failed.
|
|
*/
|
|
|
|
if ( ! defined( 'ABSPATH' ) ) {
|
|
exit;
|
|
}
|
|
|
|
define( 'ARGUS_WPD_VERSION', '1.0.0' );
|
|
define( 'ARGUS_WPD_FILE', __FILE__ );
|
|
define( 'ARGUS_WPD_DIR', plugin_dir_path( __FILE__ ) );
|
|
define( 'ARGUS_WPD_URL', plugin_dir_url( __FILE__ ) );
|
|
define( 'ARGUS_WPD_BASENAME', plugin_basename( __FILE__ ) );
|
|
|
|
require_once ARGUS_WPD_DIR . 'includes/class-argus-autoloader.php';
|
|
Argus_Autoloader::register();
|
|
|
|
register_activation_hook( __FILE__, array( 'Argus_Activator', 'activate' ) );
|
|
register_deactivation_hook( __FILE__, array( 'Argus_Deactivator', 'deactivate' ) );
|
|
|
|
function argus_wpd_init() {
|
|
Argus_Plugin::instance()->boot();
|
|
}
|
|
add_action( 'plugins_loaded', 'argus_wpd_init', 0 );
|