Groundhogg — CRM, Newsletters, and Marketing Automation

Groundhogg is the best WordPress CRM & Marketing Automation plugin. Create flows, email campaigns, and have a CRM all within your WordPress site.

v4.5.3Adrian TobeyUpdated Added 2k+ installs98% rating
23
Score
152
Errors
950
Warnings
+0
Change

Category Scores

Security0
Repo90
Performance90
Maintainability0

Issues to Review

Prioritized issue groups from the latest Plugin Check scan

1,102 findings

Maintainability

816

18 issue groups

Security

219

6 issue groups

Performance

12

1 issue group

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

Sample message

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

WARNINGSecurityInterpolated SQL is not preparedUse placeholders and $wpdb->prepare(); found interpolated variable $COLUMNS at "INSERT INTO $this->table_name ( $COLUMNS ) VALUES $INSERTS"137
Category
Security
Occurrences
137
Severity
warning

Sample message

Use placeholders and $wpdb->prepare(); found interpolated variable $COLUMNS at "INSERT INTO $this->table_name ( $COLUMNS ) VALUES $INSERTS"

WARNINGMaintainabilityDirect QueryUse of a direct database call is discouraged.76
Category
Maintainability
Occurrences
76
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().72
Category
Maintainability
Occurrences
72
Severity
warning

Sample message

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

ERRORMaintainabilitywp function not compatible with requires wpFunction "array_all()" requires WordPress 6.8.0, but your plugin minimum supported version is WordPress 5.9.0.39
Category
Maintainability
Occurrences
39
Severity
error

Sample message

Function "array_all()" requires WordPress 6.8.0, but your plugin minimum supported version is WordPress 5.9.0.

WARNINGMaintainabilityNot In FooterIn footer ($in_footer) is not set explicitly wp_enqueue_script; It is recommended to load scripts in the footer. Please set this value to `true` to load it in the footer, or explicitly `false` if it should be loaded in the header.38
Category
Maintainability
Occurrences
38
Severity
warning

Sample message

In footer ($in_footer) is not set explicitly wp_enqueue_script; It is recommended to load scripts in the footer. Please set this value to `true` to load it in the footer, or explicitly `false` if it should be loaded in the header.

ERRORMaintainabilitydate datedate() is affected by runtime timezone changes which can cause date/time to be incorrectly displayed. Use gmdate() instead.32
Category
Maintainability
Occurrences
32
Severity
error

Sample message

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

WARNINGSecurityDatabase parameter is not escapedUnescaped parameter $activity->get_table_name() used in $wpdb->query()28
Category
Security
Occurrences
28
Severity
warning

Sample message

Unescaped parameter $activity->get_table_name() used in $wpdb->query()

WARNINGMaintainabilityNon-prefixed hook nameHook names invoked by a theme/plugin should start with the theme/plugin prefix. Found: "'get_template_part_' . $slug".28
Category
Maintainability
Occurrences
28
Severity
warning

Sample message

Hook names invoked by a theme/plugin should start with the theme/plugin prefix. Found: "'get_template_part_' . $slug".

WARNINGMaintainabilityslow db query meta keyDetected usage of meta_key, possible slow query.27
Category
Maintainability
Occurrences
27
Severity
warning

Sample message

Detected usage of meta_key, possible slow query.

Show 15 more
WARNINGMaintainabilityMissing Version26
Category
Maintainability
Occurrences
26
Severity
warning

Sample message

Resource version not set in call to wp_register_script(). This means new versions of the script may not always be loaded due to browser caching.

ERRORSecurityUnsupported Identifier Placeholder20
Category
Security
Occurrences
20
Severity
error

Sample message

The %i modifier is only supported in WP 6.2 or higher. Found: "%i".

WARNINGMaintainabilityslow db query meta value17
Category
Maintainability
Occurrences
17
Severity
warning

Sample message

Detected usage of meta_value, possible slow query.

WARNINGMaintainabilityNon-prefixed function16
Category
Maintainability
Occurrences
16
Severity
warning

Sample message

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

ERRORSecuritySQL query is not prepared14
Category
Security
Occurrences
14
Severity
error

Sample message

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

ERRORSecurityDatabase parameter is not escaped12
Category
Security
Occurrences
12
Severity
error

Sample message

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

WARNINGPerformancePost Not In exclude12
Category
Performance
Occurrences
12
Severity
warning

Sample message

Using exclusionary parameters, like exclude, in calls to get_posts() should be done with caution, see https://wpvip.com/documentation/performance-improvements-by-removing-usage-of-post__not_in/ for more information.

WARNINGMaintainabilitySchema Change9
Category
Maintainability
Occurrences
9
Severity
warning

Sample message

Attempting a database schema change is discouraged.

WARNINGSecurityUnfinished Prepare8
Category
Security
Occurrences
8
Severity
warning

Sample message

Replacement variables found, but no valid placeholders found in the query.

WARNINGMaintainabilityslow db query meta query7
Category
Maintainability
Occurrences
7
Severity
warning

Sample message

Detected usage of meta_query, possible slow query.

ERRORMaintainabilityMissing direct file access protection7
Category
Maintainability
Occurrences
7
Severity
error

Sample message

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

WARNINGMaintainabilityDiscouraged PHP function6
Category
Maintainability
Occurrences
6
Severity
warning

Sample message

The use of function ini_set() is discouraged

WARNINGMaintainabilityDynamic hook name6
Category
Maintainability
Occurrences
6
Severity
warning

Sample message

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

WARNINGMaintainabilityNon-prefixed constant6
Category
Maintainability
Occurrences
6
Severity
warning

Sample message

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

ERRORMaintainabilityfile system operations fclose6
Category
Maintainability
Occurrences
6
Severity
error

Sample message

File operations should use WP_Filesystem methods instead of direct PHP filesystem calls. Found: fclose().

External Connections

Not analyzed yet.

Score History

First score snapshot

v4.5.3

23

Latest

Findings
1,102
Errors
152
Warnings
950
Check
2.0.0

Related Plugins