Adds WordPress login and admin protections, including CAPTCHA, login lock, login alerts, renamed login URLs, and SiteGuard WAF tuning support.
Prioritized issue groups from the latest Plugin Check scan
Security
509
9 issue groups
Maintainability
153
13 issue groups
I18n
25
3 issue groups
Sample message
All output should be run through an escaping function (see the Security sections in the WordPress Developer Handbooks), found '$action'.
Sample message
$_COOKIE[$cookie_name] not unslashed before sanitization. Use wp_unslash() or similar
Sample message
Detected usage of a non-sanitized input variable: $_GET['rule']
Sample message
Detected usage of a possibly undefined superglobal array index: $_POST[self::OPT_NAME_BODY]. Check that the array index exists before using it.
Sample message
File operations should use WP_Filesystem methods instead of direct PHP filesystem calls. Found: fwrite().
Sample message
Use of a direct database call is discouraged.
Sample message
Processing form data without nonce verification.
Sample message
Direct database call without caching detected. Consider using wp_cache_get() / wp_cache_set() or wp_cache_delete().
Sample message
unlink() is discouraged. Use wp_delete_file() to delete a file.
Sample message
Processing form data without nonce verification.
Sample message
A function call to esc_html__() with texts containing placeholders was found, but was not accompanied by a "translators:" comment on the line above to clarify the meaning of the placeholders.
Sample message
Use placeholders and $wpdb->prepare(); found interpolated variable $table at "SELECT 1 FROM $table WHERE ip_address = %s AND status = %d AND last_login_time >= (SYSDATE() - INTERVAL 1 DAY) LIMIT 1"
Sample message
File operations should use WP_Filesystem methods instead of direct PHP filesystem calls. Found: chmod().
Sample message
File operations should use WP_Filesystem methods instead of direct PHP filesystem calls. Found: fclose().
Sample message
Missing $domain parameter in function call to __().
Sample message
File operations should use WP_Filesystem methods instead of direct PHP filesystem calls. Found: is_writable().
Sample message
parse_url() is discouraged because of inconsistency in the output across PHP versions; use wp_parse_url() instead.
Sample message
PHP file should prevent direct access. Add a check like: if ( ! defined( 'ABSPATH' ) ) exit;
Sample message
File operations should use WP_Filesystem methods instead of direct PHP filesystem calls. Found: fopen().
Sample message
Hook names invoked by a theme/plugin should start with the theme/plugin prefix. Found: "https_local_ssl_verify".
Sample message
File operations should use WP_Filesystem methods instead of direct PHP filesystem calls. Found: rmdir().
Sample message
Writing files using ABSPATH may be problematic. Consider using wp_upload_dir() instead if storing user data or generated files.
Sample message
Use placeholders and $wpdb->prepare(); found $prepare
Sample message
load_plugin_textdomain() has been discouraged since WordPress version 4.6. When your plugin is hosted on WordPress.org, you no longer need to manually include this function call for translations under your plugin slug. WordPress will automatically load the translations for you as needed.
Sample message
Unescaped parameter $table_name used in $wpdb->query()\n$table_name assigned unsafely at line 31.
Potential connections found in static code analysis.
Outbound calls
18
External assets
1
Incoming endpoints
0
No external asset domains detected.
No public endpoints detected.
10 score snapshots
v1.8.8
24
Latest
v1.8.7
24
Score
| Scan | Score | Findings | Errors | Warnings | Plugin | Check |
|---|---|---|---|---|---|---|
| Latest | 24 | 711 | 359 | 352 | v1.8.8 | 2.0.0 |
| 24 | 709 | 359 | 350 | v1.8.7 | 2.0.0 |
Author, categories, issues, domains, and nearby plugins.