Easy Digital Downloads – eCommerce Payments and Subscriptions made easy

The #1 eCommerce plugin to sell digital products & subscriptions. Accept payments with Stripe & PayPal. Sell ebooks, software & more.

v3.6.9Syed BalkhiUpdated Added 40k+ installs94% rating100% support resolved
23
Score
3,723
Errors
10,283
Warnings
+0
Change

Category Scores

Security0
Repo94
Performance84
Maintainability0

Issues to Review

Prioritized issue groups from the latest Plugin Check scan

14,006 findings

Maintainability

9,248

12 issue groups

Security

4,084

12 issue groups

I18n

217

1 issue group

WARNINGMaintainabilityNon Prefixed Namespace FoundNamespaces declared by a theme/plugin should start with the theme/plugin prefix. Found: "EDD".3,833
Category
Maintainability
Occurrences
3,833
Severity
warning

Sample message

Namespaces declared by a theme/plugin should start with the theme/plugin prefix. Found: "EDD".

WARNINGMaintainabilityNon Prefixed Hookname FoundHook names invoked by a theme/plugin should start with the theme/plugin prefix. Found: "'edd_' . $_GET['edd-action']".1,701
Category
Maintainability
Occurrences
1,701
Severity
warning

Sample message

Hook names invoked by a theme/plugin should start with the theme/plugin prefix. Found: "'edd_' . $_GET['edd-action']".

WARNINGMaintainabilityNon Prefixed Function FoundFunctions declared in the global namespace by a theme/plugin should start with the theme/plugin prefix. Found: "_edd_anonymize_customer".1,389
Category
Maintainability
Occurrences
1,389
Severity
warning

Sample message

Functions declared in the global namespace by a theme/plugin should start with the theme/plugin prefix. Found: "_edd_anonymize_customer".

ERRORSecurityOutput Not EscapedAll output should be run through an escaping function (see the Security sections in the WordPress Developer Handbooks), found '" data-wp-lists='list:$singular'"'.1,039
Category
Security
Occurrences
1,039
Severity
error

Sample message

All output should be run through an escaping function (see the Security sections in the WordPress Developer Handbooks), found '" data-wp-lists='list:$singular'"'.

ERRORMaintainabilitymissing direct file access protectionPHP file should prevent direct access. Add a check like: if ( ! defined( 'ABSPATH' ) ) exit;1,004
Category
Maintainability
Occurrences
1,004
Severity
error

Sample message

PHP file should prevent direct access. Add a check like: if ( ! defined( 'ABSPATH' ) ) exit;

ERRORSecurityException Not EscapedAll output should be run through an escaping function (see the Security sections in the WordPress Developer Handbooks), found '"$className has not the instance() method needed to cast the date."'.585
Category
Security
Occurrences
585
Severity
error

Sample message

All output should be run through an escaping function (see the Security sections in the WordPress Developer Handbooks), found '"$className has not the instance() method needed to cast the date."'.

WARNINGSecurityRecommendedProcessing form data without nonce verification.560
Category
Security
Occurrences
560
Severity
warning

Sample message

Processing form data without nonce verification.

WARNINGSecurityMissing Unslash$_COOKIE[$cookie] not unslashed before sanitization. Use wp_unslash() or similar464
Category
Security
Occurrences
464
Severity
warning

Sample message

$_COOKIE[$cookie] not unslashed before sanitization. Use wp_unslash() or similar

WARNINGSecurityMissingProcessing form data without nonce verification.432
Category
Security
Occurrences
432
Severity
warning

Sample message

Processing form data without nonce verification.

WARNINGMaintainabilityNon Prefixed Variable FoundGlobal variables defined by a theme/plugin should start with the theme/plugin prefix. Found: "$address".402
Category
Maintainability
Occurrences
402
Severity
warning

Sample message

Global variables defined by a theme/plugin should start with the theme/plugin prefix. Found: "$address".

Show 15 more
ERRORSecurityUnsafe Printing Function285
Category
Security
Occurrences
285
Severity
error

Sample message

All output should be run through an escaping function (like esc_html_e() or esc_attr_e()), found '_e'.

WARNINGSecurityInput Not Sanitized253
Category
Security
Occurrences
253
Severity
warning

Sample message

Detected usage of a non-sanitized input variable: $_COOKIE[$cookie]

WARNINGMaintainabilityDirect Query249
Category
Maintainability
Occurrences
249
Severity
warning

Sample message

Use of a direct database call is discouraged.

WARNINGMaintainabilityNo Caching234
Category
Maintainability
Occurrences
234
Severity
warning

Sample message

Direct database call without caching detected. Consider using wp_cache_get() / wp_cache_set() or wp_cache_delete().

ERRORI18nText Domain Mismatch217
Category
I18n
Occurrences
217
Severity
error

Sample message

Mismatched text domain. Expected 'easy-digital-downloads' but got 'action-scheduler'.

WARNINGSecurityInterpolated Not Prepared193
Category
Security
Occurrences
193
Severity
warning

Sample message

Use placeholders and $wpdb->prepare(); found interpolated variable $column at "SELECT $column FROM $this->table_name WHERE $column_where = %s LIMIT 1;"

ERRORMaintainabilitydate date187
Category
Maintainability
Occurrences
187
Severity
error

Sample message

date() is affected by runtime timezone changes which can cause date/time to be incorrectly displayed. Use gmdate() instead.

WARNINGSecurityInput Not Validated94
Category
Security
Occurrences
94
Severity
warning

Sample message

Detected usage of a possibly undefined superglobal array index: $_FILES['edd-import-file']['name']. Check that the array index exists before using it.

WARNINGMaintainabilityNon Prefixed Class Found87
Category
Maintainability
Occurrences
87
Severity
warning

Sample message

Classes declared by a theme/plugin should start with the theme/plugin prefix. Found: "Array2XML".

ERRORSecurityNot Prepared71
Category
Security
Occurrences
71
Severity
error

Sample message

Use placeholders and $wpdb->prepare(); found $compare_string

WARNINGMaintainabilityerror log trigger error64
Category
Maintainability
Occurrences
64
Severity
warning

Sample message

trigger_error() found. Debug code should not normally be used in production.

WARNINGSecurityUnescaped DBParameter55
Category
Security
Occurrences
55
Severity
warning

Sample message

Unescaped parameter $column_name used in $wpdb->get_var()

ERRORSecurityUnescaped DBParameter53
Category
Security
Occurrences
53
Severity
error

Sample message

Unescaped parameter $column used in $wpdb->get_results()\n$column assigned unsafely at line 210.

WARNINGMaintainabilityerror log debug backtrace51
Category
Maintainability
Occurrences
51
Severity
warning

Sample message

debug_backtrace() found. Debug code should not normally be used in production.

ERRORMaintainabilitymysql PDO47
Category
Maintainability
Occurrences
47
Severity
error

Sample message

Accessing the database directly should be avoided. Please use the $wpdb object and associated functions instead. Found: \PDO.

Score History

First score snapshot

v3.6.9

23

Latest

Findings
14,006
Errors
3,723
Warnings
10,283
Check
2.0.0

Related Plugins