Accept donations and begin fundraising with GiveWP, the highest rated WordPress donation plugin for online giving.
Category Scores
Top Issues by Category
security4,429
maintainability1,787
Issues Details
7,015 issues found in latest scan
All output should be run through an escaping function (see the Security sections in the WordPress Developer Handbooks), found '" data-rf-row-count=\"{$fields_count}\""'.
Processing form data without nonce verification.
Global variables defined by a theme/plugin should start with the theme/plugin prefix. Found: "$actionText".
A function call to __() 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.
All output should be run through an escaping function (like esc_html_e() or esc_attr_e()), found '_e'.
$_COOKIE['give_nl'] not unslashed before sanitization. Use wp_unslash() or similar
Detected usage of a non-sanitized input variable: $_COOKIE['give_nl']
Processing form data without nonce verification.
date() is affected by runtime timezone changes which can cause date/time to be incorrectly displayed. Use gmdate() instead.
All output should be run through an escaping function (see the Security sections in the WordPress Developer Handbooks), found '"$eagerLoadedModelClass must be an instance of "'.
Direct database call without caching detected. Consider using wp_cache_get() / wp_cache_set() or wp_cache_delete().
Detected usage of a possibly undefined superglobal array index: $_FILES[$this->field->getName()]. Check that the array index exists before using it.
PHP file should prevent direct access. Add a check like: if ( ! defined( 'ABSPATH' ) ) exit;
Use placeholders and $wpdb->prepare(); found interpolated variable $column at "SELECT $column FROM $this->table_name WHERE $column_where = %s LIMIT 1;"
Short PHP opening tag used with echo; expected "<?php echo $accessibleLabel ..." but found "<?= $accessibleLabel ..."
Use placeholders and $wpdb->prepare(); found $comment_args
Functions declared in the global namespace by a theme/plugin should start with the theme/plugin prefix. Found: "_give_20_bc_get_new_payment_meta".
Unescaped parameter $auto_increment used in $wpdb->query()\n$auto_increment assigned unsafely at line 112.
debug_backtrace() found. Debug code should not normally be used in production.
Detected usage of meta_key, possible slow query.
Detected usage of meta_value, possible slow query.
Hook names invoked by a theme/plugin should start with the theme/plugin prefix. Found: "$_post['hook']".
wp_redirect() found. Using wp_safe_redirect(), along with the "allowed_redirect_hosts" filter if needed, can help avoid any chances of malicious redirects within code. It is also important to remember to call exit() after a redirect so that no other unwanted code is executed.
Resource version not set in call to wp_enqueue_script(). This means new versions of the script may not always be loaded due to browser caching.
| Code | Type | Message | Count |
|---|---|---|---|
| WordPress.Security.EscapeOutput.OutputNotEscaped | ERROR | All output should be run through an escaping function (see the Security sections in the WordPress Developer Handbooks), found '" data-rf-row-count=\"{$fields_count}\""'. | 1,558 |
| WordPress.Security.NonceVerification.Recommended | WARNING | Processing form data without nonce verification. | 722 |
| WordPress.NamingConventions.PrefixAllGlobals.NonPrefixedVariableFound | WARNING | Global variables defined by a theme/plugin should start with the theme/plugin prefix. Found: "$actionText". | 660 |
| WordPress.WP.I18n.MissingTranslatorsComment | ERROR | A function call to __() 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. | 461 |
| WordPress.Security.EscapeOutput.UnsafePrintingFunction | ERROR | All output should be run through an escaping function (like esc_html_e() or esc_attr_e()), found '_e'. | 458 |
| WordPress.Security.ValidatedSanitizedInput.MissingUnslash | WARNING | $_COOKIE['give_nl'] not unslashed before sanitization. Use wp_unslash() or similar | 394 |
| WordPress.Security.ValidatedSanitizedInput.InputNotSanitized | WARNING | Detected usage of a non-sanitized input variable: $_COOKIE['give_nl'] | 368 |
| WordPress.Security.NonceVerification.Missing | WARNING | Processing form data without nonce verification. | 315 |
| WordPress.DateTime.RestrictedFunctions.date_date | ERROR | date() is affected by runtime timezone changes which can cause date/time to be incorrectly displayed. Use gmdate() instead. | 266 |
| WordPress.DB.DirectDatabaseQuery.DirectQuery | WARNING | Use of a direct database call is discouraged. | 218 |
| WordPress.Security.EscapeOutput.ExceptionNotEscaped | ERROR | All output should be run through an escaping function (see the Security sections in the WordPress Developer Handbooks), found '"$eagerLoadedModelClass must be an instance of "'. | 211 |
| WordPress.DB.DirectDatabaseQuery.NoCaching | WARNING | Direct database call without caching detected. Consider using wp_cache_get() / wp_cache_set() or wp_cache_delete(). | 207 |
| WordPress.Security.ValidatedSanitizedInput.InputNotValidated | WARNING | Detected usage of a possibly undefined superglobal array index: $_FILES[$this->field->getName()]. Check that the array index exists before using it. | 162 |
| missing_direct_file_access_protection | ERROR | PHP file should prevent direct access. Add a check like: if ( ! defined( 'ABSPATH' ) ) exit; | 137 |
| WordPress.DB.PreparedSQL.InterpolatedNotPrepared | WARNING | Use placeholders and $wpdb->prepare(); found interpolated variable $column at "SELECT $column FROM $this->table_name WHERE $column_where = %s LIMIT 1;" | 103 |
| Generic.PHP.DisallowShortOpenTag.EchoFound | ERROR | Short PHP opening tag used with echo; expected "<?php echo $accessibleLabel ..." but found "<?= $accessibleLabel ..." | 73 |
| WordPress.DB.PreparedSQL.NotPrepared | ERROR | Use placeholders and $wpdb->prepare(); found $comment_args | 62 |
| WordPress.NamingConventions.PrefixAllGlobals.NonPrefixedFunctionFound | WARNING | Functions declared in the global namespace by a theme/plugin should start with the theme/plugin prefix. Found: "_give_20_bc_get_new_payment_meta". | 53 |
| PluginCheck.Security.DirectDB.UnescapedDBParameter | ERROR | Unescaped parameter $auto_increment used in $wpdb->query()\n$auto_increment assigned unsafely at line 112. | 48 |
| WordPress.PHP.DevelopmentFunctions.error_log_debug_backtrace | WARNING | debug_backtrace() found. Debug code should not normally be used in production. | 44 |
| WordPress.DB.SlowDBQuery.slow_db_query_meta_key | WARNING | Detected usage of meta_key, possible slow query. | 39 |
| WordPress.DB.SlowDBQuery.slow_db_query_meta_value | WARNING | Detected usage of meta_value, possible slow query. | 34 |
| WordPress.NamingConventions.PrefixAllGlobals.DynamicHooknameFound | WARNING | Hook names invoked by a theme/plugin should start with the theme/plugin prefix. Found: "$_post['hook']". | 29 |
| WordPress.Security.SafeRedirect.wp_redirect_wp_redirect | WARNING | wp_redirect() found. Using wp_safe_redirect(), along with the "allowed_redirect_hosts" filter if needed, can help avoid any chances of malicious redirects within code. It is also important to remember to call exit() after a redirect so that no other unwanted code is executed. | 28 |
| WordPress.WP.EnqueuedResourceParameters.MissingVersion | WARNING | Resource version not set in call to wp_enqueue_script(). This means new versions of the script may not always be loaded due to browser caching. | 27 |
Latest Snapshot
Findings
7,015
Errors
3,435
Warnings
3,580
Score History
First score snapshot
First scan completed Jun 19, 2026
v4.15.4 · Plugin Check 2.0.0 · Model 2026.06-mvp-static-v2
Jun 19, 2026
v4.15.4
20
Latest
- Findings
- 7,015
- Errors
- 3,435
- Warnings
- 3,580
- Plugin Check
- 2.0.0
- Model
- 2026.06-mvp-static-v2
| Scan | Score | Findings | Errors | Warnings | Plugin | Plugin Check | Model |
|---|---|---|---|---|---|---|---|
| Jun 19, 2026Latest | 20 | 7,015 | 3,435 | 3,580 | v4.15.4 | 2.0.0 | 2026.06-mvp-static-v2 |