PluginProbe
Defender Security – Malware Scanner, Login Security & Firewall / 6.3.0
Defender Security – Malware Scanner, Login Security & Firewall v6.3.0
6.3.0 6.2.3 6.2.4 6.2.0 6.2.1 6.2.2 6.1.0 5.3.1 5.4.0 5.4.1 5.5.0 5.5.1 5.6.0 5.6.1 5.6.2 5.7.0 5.7.1 5.7.2 5.8.0 5.8.1 5.9.0 6.0.0 6.0.1 3.0.1 3.1.0 All 141 releases
← All changes | wp-defender.php +20 -8 5.3.1 → 6.3.0 View file →
@@ -1,9 +1,9 @@
1 1 <?php
2 2 /**
3 3 * Plugin Name: Defender
4 4 * Plugin URI: https://wpmudev.com/project/wp-defender/
5 - * Version: 5.3.1
5 + * Version: 6.3.0
6 6 * Description: Get regular security scans, vulnerability reports, safety recommendations and customized hardening for your site in just a few clicks. Defender is the analyst and enforcer who never sleeps.
7 7 * Author: WPMU DEV
8 8 * Author URI: https://wpmudev.com/
9 9 * License: GNU General Public License (Version 2 - GPLv2)
@@ -8,9 +8,9 @@
8 8 * Author URI: https://wpmudev.com/
9 9 * License: GNU General Public License (Version 2 - GPLv2)
10 10 * Text Domain: defender-security
11 11 * Network: true
12 - * Requires PHP: 7.4
12 + * Requires PHP: 8.0.0
13 13 * Requires at least: 6.4
14 14 *
15 15 * @package WP_Defender
16 16 */
@@ -15,9 +15,9 @@
15 15 * @package WP_Defender
16 16 */
17 17
18 18 /*
19 -Copyright 2007-2025 Incsub (https://incsub.com)
19 +Copyright 2007-2026 Incsub (https://incsub.com)
20 20 Author - Hoang Ngo, Anton Shulga
21 21
22 22 This program is free software; you can redistribute it and/or modify
23 23 it under the terms of the GNU General Public License (Version 2 - GPLv2) as published by
@@ -36,12 +36,15 @@
36 36 if ( ! defined( 'ABSPATH' ) ) {
37 37 die;
38 38 }
39 39 if ( ! defined( 'DEFENDER_VERSION' ) ) {
40 - define( 'DEFENDER_VERSION', '5.3.1' );
40 + define( 'DEFENDER_VERSION', '6.3.0' );
41 41 }
42 +if ( ! defined( 'DEFENDER_RELEASE_DATE' ) ) {
43 + define( 'DEFENDER_RELEASE_DATE', '2026-09-22' );
44 +}
42 45 if ( ! defined( 'DEFENDER_DB_VERSION' ) ) {
43 - define( 'DEFENDER_DB_VERSION', '5.3.1' );
46 + define( 'DEFENDER_DB_VERSION', '6.3.0' );
44 47 }
45 48 if ( ! defined( 'DEFENDER_SUI' ) ) {
46 49 define( 'DEFENDER_SUI', '2-12-24' );
47 50 }
@@ -57,9 +60,9 @@
57 60 if ( ! defined( 'WP_DEFENDER_BASE_URL' ) ) {
58 61 define( 'WP_DEFENDER_BASE_URL', plugin_dir_url( WP_DEFENDER_FILE ) );
59 62 }
60 63 if ( ! defined( 'WP_DEFENDER_MIN_PHP_VERSION' ) ) {
61 - define( 'WP_DEFENDER_MIN_PHP_VERSION', '7.4' );
64 + define( 'WP_DEFENDER_MIN_PHP_VERSION', '8.0.0' );
62 65 }
63 66 if ( ! defined( 'WP_DEFENDER_PRO_PATH' ) ) {
64 67 define( 'WP_DEFENDER_PRO_PATH', 'wp-defender/wp-defender.php' );
65 68 }
@@ -114,8 +117,17 @@
114 117 }
115 118 }
116 119
117 120 require_once WP_DEFENDER_DIR . 'vendor/autoload.php';
121 +/**
122 + * Backward compatibility: old Recaptcha controller now aliases to Captcha.
123 + *
124 + * @deprecated 5.8.0 Use Captcha instead.
125 + */
126 +if ( ! class_exists( '\\WP_Defender\\Controller\\Recaptcha', false ) ) {
127 + class_alias( \WP_Defender\Controller\Captcha::class, '\\WP_Defender\\Controller\\Recaptcha' );
128 +}
129 +
118 130 // Load Action Scheduler package.
119 131 if ( file_exists( WP_DEFENDER_DIR . 'vendor/woocommerce/action-scheduler/action-scheduler.php' ) ) {
120 132 add_action(
121 133 'plugins_loaded',
@@ -120,8 +132,9 @@
120 132 add_action(
121 133 'plugins_loaded',
122 134 function () {
123 135 require_once WP_DEFENDER_DIR . 'vendor/woocommerce/action-scheduler/action-scheduler.php';
136 + \WP_Defender\ActionScheduler_Setup::init();
124 137 },
125 138 -10 // Don't change the priority to positive number, because to load this before AS initialized.
126 139 );
127 140 }
@@ -127,11 +140,10 @@
127 140 }
128 141
129 142 require_once WP_DEFENDER_DIR . 'src/functions.php';
130 143 // Create container.
131 -$builder = new \WPMU_DEV\Defender\Vendor\DI\ContainerBuilder();
132 144 global $wp_defender_di;
133 -$wp_defender_di = $builder->build();
145 +$wp_defender_di = new \WP_Defender\Component\Container();
134 146 global $wp_defender_central;
135 147 $wp_defender_central = new \WP_Defender\Central();
136 148 do_action( 'wp_defender' );
137 149 // Initialize bootstrap.