Retainful – WooCommerce Abandoned Cart, Newsletters, Email Marketing, Signup Forms and Automation

WooCommerce abandoned cart recovery, Newsletters, Email campaigns, Subscription forms, Popups and Email Marketing Automation plugin

v2.6.44retainfulUpdated Added 1k+ installs98% rating
79
Score
15
Errors
26
Warnings
+0
Change

Category Scores

Security72
Repo89
Performance100
Maintainability79

Issues to Review

Prioritized issue groups from the latest Plugin Check scan

41 findings

Maintainability

31

8 issue groups

Security

8

3 issue groups

Repo Compliance

2

2 issue groups

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

Sample message

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

ERRORMaintainabilityrand mt randmt_rand() is discouraged. Use the far less predictable wp_rand() instead.8
Category
Maintainability
Occurrences
8
Severity
error

Sample message

mt_rand() is discouraged. Use the far less predictable wp_rand() instead.

WARNINGSecurityDatabase parameter is not escapedUnescaped parameter $custom_table_name used in $wpdb->get_results()\n$custom_table_name assigned unsafely at line 767.5
Category
Security
Occurrences
5
Severity
warning

Sample message

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

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

Sample message

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

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

Sample message

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

WARNINGSecurityNonce verification recommendedProcessing form data without nonce verification.2
Category
Security
Occurrences
2
Severity
warning

Sample message

Processing form data without nonce verification.

WARNINGMaintainabilitytrademarked termThe plugin name includes a restricted term. Your chosen plugin name - "Retainful - WooCommerce Abandoned Cart Recovery, Email Campaigns, Newsletters, Signup Forms & Popups" - contains the restricted term "woocommerce" which cannot be used within in your plugin name, unless your plugin name contains one of the allowed patterns: "for woocommerce", "with woocommerce", "using woocommerce", or "and woocommerce". The term must still not appear anywhere else in your name.2
Category
Maintainability
Occurrences
2
Severity
warning

Sample message

The plugin name includes a restricted term. Your chosen plugin name - "Retainful - WooCommerce Abandoned Cart Recovery, Email Campaigns, Newsletters, Signup Forms & Popups" - contains the restricted term "woocommerce" which cannot be used within in your plugin name, unless your plugin name contains one of the allowed patterns: "for woocommerce", "with woocommerce", "using woocommerce", or "and woocommerce". The term must still not appear anywhere else in your name.

WARNINGMaintainabilityNon-prefixed constantGlobal constants defined by a theme/plugin should start with the theme/plugin prefix. Found: "REQUESTS_SILENCE_PSR0_DEPRECATIONS".1
Category
Maintainability
Occurrences
1
Severity
warning

Sample message

Global constants defined by a theme/plugin should start with the theme/plugin prefix. Found: "REQUESTS_SILENCE_PSR0_DEPRECATIONS".

WARNINGSecurityInput is not sanitizedDetected usage of a non-sanitized input variable: $_SESSION[$key]1
Category
Security
Occurrences
1
Severity
warning

Sample message

Detected usage of a non-sanitized input variable: $_SESSION[$key]

WARNINGMaintainabilitymismatched plugin namePlugin name "Retainful - WooCommerce Abandoned Cart, Newsletters, Email Marketing, Signup Forms and Automation" is different from the name declared in plugin header "Retainful - WooCommerce Abandoned Cart Recovery, Email Campaigns, Newsletters, Signup Forms & Popups".1
Category
Maintainability
Occurrences
1
Severity
warning

Sample message

Plugin name "Retainful - WooCommerce Abandoned Cart, Newsletters, Email Marketing, Signup Forms and Automation" is different from the name declared in plugin header "Retainful - WooCommerce Abandoned Cart Recovery, Email Campaigns, Newsletters, Signup Forms & Popups".

Show 3 more
WARNINGMaintainabilitymissing composer json file1
Category
Maintainability
Occurrences
1
Severity
warning

Sample message

The "/vendor" directory using composer exists, but "composer.json" file is missing.

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.

External Connections

Not analyzed yet.

Score History

First score snapshot

v2.6.44

79

Latest

Findings
41
Errors
15
Warnings
26
Check
2.0.0

Relationship Map

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

29 nodes

Related Plugins