Every store loses sales to cart abandonment. But with Cart Abandonment Recovery for WooCommerce, you can win them back—automatically.
Category Scores
Issues to Review
Prioritized issue groups from the latest Plugin Check scan
Maintainability
306
15 issue groups
Security
59
5 issue groups
Supply Chain
6
1 issue group
I18n
2
2 issue groups
WARNINGMaintainabilityDirect QueryUse of a direct database call is discouraged.78
- Category
- Maintainability
- Occurrences
- 78
- 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().70
- Category
- Maintainability
- Occurrences
- 70
- Severity
- warning
Sample message
Direct database call without caching detected. Consider using wp_cache_get() / wp_cache_set() or wp_cache_delete().
WARNINGMaintainabilityNon-prefixed constantGlobal constants defined by a theme/plugin should start with the theme/plugin prefix. Found: "BSF_ANALYTICS_URI".50
- Category
- Maintainability
- Occurrences
- 50
- Severity
- warning
Sample message
Global constants defined by a theme/plugin should start with the theme/plugin prefix. Found: "BSF_ANALYTICS_URI".
WARNINGMaintainabilityNon-prefixed hook nameHook names invoked by a theme/plugin should start with the theme/plugin prefix. Found: "astra_notice_after_markup".45
- Category
- Maintainability
- Occurrences
- 45
- Severity
- warning
Sample message
Hook names invoked by a theme/plugin should start with the theme/plugin prefix. Found: "astra_notice_after_markup".
WARNINGMaintainabilityNon-prefixed global variableGlobal variables defined by a theme/plugin should start with the theme/plugin prefix. Found: "$action_id".34
- Category
- Maintainability
- Occurrences
- 34
- Severity
- warning
Sample message
Global variables defined by a theme/plugin should start with the theme/plugin prefix. Found: "$action_id".
ERRORSecuritySetting is missing a sanitization callbackSanitization missing for register_setting().20
- Category
- Security
- Occurrences
- 20
- Severity
- error
Sample message
Sanitization missing for register_setting().
WARNINGSecurityDatabase parameter is not escapedUnescaped parameter $column used in $wpdb->query()\n$column assigned unsafely at line 283.14
- Category
- Security
- Occurrences
- 14
- Severity
- warning
Sample message
Unescaped parameter $column used in $wpdb->query()\n$column assigned unsafely at line 283.
WARNINGSecurityRequest data is not unslashed$_GET['nonce'] not unslashed before sanitization. Use wp_unslash() or similar12
- Category
- Security
- Occurrences
- 12
- Severity
- warning
Sample message
$_GET['nonce'] not unslashed before sanitization. Use wp_unslash() or similar
ERRORSecurityUnsafe printing functionAll output should be run through an escaping function (like esc_html_e() or esc_attr_e()), found '_e'.11
- Category
- Security
- Occurrences
- 11
- Severity
- error
Sample message
All output should be run through an escaping function (like esc_html_e() or esc_attr_e()), found '_e'.
WARNINGMaintainabilityNon-prefixed classClasses declared by a theme/plugin should start with the theme/plugin prefix. Found: "Astra_Notices".8
- Category
- Maintainability
- Occurrences
- 8
- Severity
- warning
Sample message
Classes declared by a theme/plugin should start with the theme/plugin prefix. Found: "Astra_Notices".
Show 15 moreShow less
ERRORSupply ChainHidden files included6
- Category
- Supply Chain
- Occurrences
- 6
- Severity
- error
Sample message
Hidden files are not permitted.
WARNINGMaintainabilityNon-prefixed function4
- Category
- Maintainability
- Occurrences
- 4
- Severity
- warning
Sample message
Functions declared in the global namespace by a theme/plugin should start with the theme/plugin prefix. Found: "_is_wcar_pro".
ERRORMaintainabilityMissing direct file access protection4
- Category
- Maintainability
- Occurrences
- 4
- Severity
- error
Sample message
PHP file should prevent direct access. Add a check like: if ( ! defined( 'ABSPATH' ) ) exit;
WARNINGMaintainabilityslow db query meta key3
- Category
- Maintainability
- Occurrences
- 3
- Severity
- warning
Sample message
Detected usage of meta_key, possible slow query.
WARNINGMaintainabilityDynamic hook name3
- Category
- Maintainability
- Occurrences
- 3
- Severity
- warning
Sample message
Hook names invoked by a theme/plugin should start with the theme/plugin prefix. Found: "$key . '_tracking_enabled'".
ERRORSecurityOutput is not escaped2
- Category
- Security
- Occurrences
- 2
- Severity
- error
Sample message
All output should be run through an escaping function (see the Security sections in the WordPress Developer Handbooks), found '__'.
ERRORMaintainabilityfive star reviews detected2
- Category
- Maintainability
- Occurrences
- 2
- Severity
- error
Sample message
Linking directly to 5 stars reviews is not allowed.
ERRORMaintainabilitywp function not compatible with requires wp2
- Category
- Maintainability
- Occurrences
- 2
- Severity
- error
Sample message
Function "wp_register_ability()" requires WordPress 6.9.0, but your plugin minimum supported version is WordPress 5.4.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.
ERRORMaintainabilityfile system operations fclose1
- Category
- Maintainability
- Occurrences
- 1
- Severity
- error
Sample message
File operations should use WP_Filesystem methods instead of direct PHP filesystem calls. Found: fclose().
ERRORI18nMissing Translators Comment1
- Category
- I18n
- Occurrences
- 1
- Severity
- error
Sample message
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.
WARNINGMaintainabilitymismatched plugin name1
- Category
- Maintainability
- Occurrences
- 1
- Severity
- warning
Sample message
Plugin name "Cart Abandonment Recovery for WooCommerce – Recover Lost Sales with Automated Emails" is different from the name declared in plugin header "Cart Abandonment Recovery for WooCommerce".
ERRORRepo Complianceoutdated tested upto header1
- Category
- Repo Compliance
- Occurrences
- 1
- Severity
- error
Sample message
Tested up to: 6.9 < 7.0. The "Tested up to" value in your plugin is not set to the current version of WordPress. This means your plugin will not show up in searches, as we require plugins to be compatible and documented as tested up to the most recent version of WordPress.
ERRORRepo Complianceplugin header no license1
- Category
- Repo Compliance
- Occurrences
- 1
- Severity
- error
Sample message
Missing "License" in Plugin Header. Please update your Plugin Header with a valid GPLv2 (or later) compatible license.
WARNINGMaintainabilitytrademarked term1
- Category
- Maintainability
- Occurrences
- 1
- Severity
- warning
Sample message
The plugin slug includes a restricted term. Your plugin slug - "woo-cart-abandonment-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".
External Connections
Not analyzed yet.
Score History
First score snapshot
v2.1.3
26
Latest
- Findings
- 376
- Errors
- 51
- Warnings
- 325
- Check
- 2.0.0
| Scan | Score | Findings | Errors | Warnings | Plugin | Check |
|---|---|---|---|---|---|---|
| Latest | 26 | 376 | 51 | 325 | v2.1.3 | 2.0.0 |
Relationship Map
Author, categories, issues, domains, and nearby plugins.