Abandoned Cart Recovery for WooCommerce

A simple, effective solution to capture abandoned carts and auto-send reminders. Track logs and generate reports on carts, emails, and more

v1.1.13VillaThemeUpdated Added 4k+ installs90% rating0% support resolved
41
Score
20
Errors
202
Warnings
-1
Change

Category Scores

Security0
Repo100
Performance100
Maintainability79

Issues to Review

Prioritized issue groups from the latest Plugin Check scan

222 findings

Security

171

5 issue groups

Maintainability

33

8 issue groups

I18n

18

2 issue groups

WARNINGSecurityRequest data is not unslashed$_GET['_wpnonce'] not unslashed before sanitization. Use wp_unslash() or similar60
Category
Security
Occurrences
60
Severity
warning

Sample message

$_GET['_wpnonce'] not unslashed before sanitization. Use wp_unslash() or similar

WARNINGSecurityInput is not sanitizedDetected usage of a non-sanitized input variable: $_COOKIE['wacv_pending_recovery']56
Category
Security
Occurrences
56
Severity
warning

Sample message

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

WARNINGSecurityDatabase parameter is not escapedUnescaped parameter $abd_record_tb used in $wpdb->query()\n$abd_record_tb assigned unsafely at line 85.47
Category
Security
Occurrences
47
Severity
warning

Sample message

Unescaped parameter $abd_record_tb used in $wpdb->query()\n$abd_record_tb assigned unsafely at line 85.

ERRORI18nMissing Arg DomainMissing $domain parameter in function call to esc_html__().17
Category
I18n
Occurrences
17
Severity
error

Sample message

Missing $domain parameter in function call to esc_html__().

WARNINGMaintainabilityNon-prefixed global variableGlobal variables defined by a theme/plugin should start with the theme/plugin prefix. Found: "$_plugin_url".16
Category
Maintainability
Occurrences
16
Severity
warning

Sample message

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

WARNINGSecurityInput is not validatedDetected usage of a possibly undefined superglobal array index: $_POST['_wp_http_referer']. Check that the array index exists before using it.5
Category
Security
Occurrences
5
Severity
warning

Sample message

Detected usage of a possibly undefined superglobal array index: $_POST['_wp_http_referer']. Check that the array index exists before using it.

WARNINGMaintainabilityNon-prefixed hook nameHook names invoked by a theme/plugin should start with the theme/plugin prefix. Found: "wcal_abandoned_orders_columns".4
Category
Maintainability
Occurrences
4
Severity
warning

Sample message

Hook names invoked by a theme/plugin should start with the theme/plugin prefix. Found: "wcal_abandoned_orders_columns".

WARNINGMaintainabilityDirect QueryUse of a direct database call is discouraged.3
Category
Maintainability
Occurrences
3
Severity
warning

Sample message

Use of a direct database call is discouraged.

WARNINGMaintainabilityNo CachingDirect database call without caching detected. Consider using wp_cache_get() / wp_cache_set() or wp_cache_delete().3
Category
Maintainability
Occurrences
3
Severity
warning

Sample message

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

WARNINGMaintainabilitySchema ChangeAttempting a database schema change is discouraged.3
Category
Maintainability
Occurrences
3
Severity
warning

Sample message

Attempting a database schema change is discouraged.

Show 5 more
WARNINGSecurityInterpolated SQL is not prepared3
Category
Security
Occurrences
3
Severity
warning

Sample message

Use placeholders and $wpdb->prepare(); found interpolated variable {$abd_record_tb} at "ALTER TABLE {$abd_record_tb} MODIFY COLUMN `browser` TEXT COLLATE utf8_unicode_ci;"

ERRORMaintainabilitywp function not compatible with requires wp2
Category
Maintainability
Occurrences
2
Severity
error

Sample message

Function "is_php_version_compatible()" requires WordPress 5.2.0, but your plugin minimum supported version is WordPress 5.0.0.

WARNINGI18nDiscouraged text-domain loading1
Category
I18n
Occurrences
1
Severity
warning

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.

WARNINGMaintainabilitytrademarked term1
Category
Maintainability
Occurrences
1
Severity
warning

Sample message

The plugin slug includes a restricted term. Your plugin slug - "woo-abandoned-cart-recovery" - contains the restricted term "woo" and cannot be used to begin your plugin slug. We disallow the use of certain terms in ways that are abused, or potentially infringe on and/or are misleading with regards to trademarks. You may use the term "woo" elsewhere in your plugin slug, such as "... for woo".

ERRORMaintainabilitytrunk stable tag1
Category
Maintainability
Occurrences
1
Severity
error

Sample message

Incorrect Stable Tag. It's recommended not to use "Stable Tag: trunk". Your Stable Tag is meant to be the stable version of your plugin and it needs to be exactly the same with the Version in your main plugin file's header. Any mismatch can prevent users from downloading the correct plugin files from WordPress.org.

External Connections

Potential connections found in static code analysis.

19 domains

Outbound calls

53

External assets

0

Incoming endpoints

13

Notable Domains

jqueryui.com4 · outbound
1.envato.market2 · outbound
villatheme.com2 · outbound
chartjs.org1 · outbound

Platform / Reference Domains

github.com18 · platform/reference
opensource.org11 · platform/reference
wordpress.org2 · platform/reference
api.wordpress.org1 · platform/reference
gnu.org1 · platform/reference

External Asset Domains

No external asset domains detected.

Incoming Endpoints

wp_ajax_nopriv_wacv_get_infopublic

wp_ajax

wp_ajax_nopriv_wacv_update_gdprpublic

wp_ajax

Admin AJAX endpoints11
wp_ajax_get_reportsauthenticated

wp_ajax

wp_ajax_send_email_abd_manualauthenticated

wp_ajax

wp_ajax_wacv_export_customer_emailsauthenticated

wp_ajax

wp_ajax_wacv_get_abd_cart_detailauthenticated

wp_ajax

wp_ajax_wacv_get_email_historyauthenticated

wp_ajax

wp_ajax_wacv_get_infoauthenticated

wp_ajax

wp_ajax_wacv_remove_recordauthenticated

wp_ajax

wp_ajax_wacv_searchauthenticated

wp_ajax

wp_ajax_wacv_send_abd_orderauthenticated

wp_ajax

wp_ajax_wacv_send_test_emailauthenticated

wp_ajax

wp_ajax_wacv_update_gdprauthenticated

wp_ajax

Score History

2 score snapshots

-1
1007550250Jun 21, 2026, 08:49 AM UTC Score 42/100 Plugin v1.1.12 Plugin Check 2.0.0 20 errors, 183 warningsJun 27, 2026, 07:37 AM UTC Score 41/100 Plugin v1.1.13 Plugin Check 2.0.0 20 errors, 202 warningsJun 21, 2026Jun 27, 2026

v1.1.13

41

Latest

Findings
222
Errors
20
Warnings
202
Check
2.0.0

v1.1.12

42

Score

Findings
203
Errors
20
Warnings
183
Check
2.0.0

Relationship Map

Author, categories, issues, domains, and nearby plugins.

37 nodes

Related Plugins