SMTP for SendGrid – YaySMTP

Send emails from WordPress through SendGrid using SMTP by YayCommerce

v1.5.1YayCommerceUpdated Added 1k+ installs100% rating
36
Score
27
Errors
96
Warnings
+0
Change

Category Scores

Security0
Repo91
Performance100
Maintainability63

Issues to Review

Prioritized issue groups from the latest Plugin Check scan

123 findings

Maintainability

71

12 issue groups

Security

45

9 issue groups

I18n

5

2 issue groups

Repo Compliance

2

2 issue groups

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

Sample message

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

WARNINGSecurityMissing nonce verificationProcessing form data without nonce verification.12
Category
Security
Occurrences
12
Severity
warning

Sample message

Processing form data without nonce verification.

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

Sample message

Use of a direct database call is discouraged.

WARNINGSecurityInterpolated SQL is not preparedUse placeholders and $wpdb->prepare(); found interpolated variable $id_placeholders at "DELETE FROM {$wpdb->prefix}yay_smtp_sendgrid_email_logs WHERE ID IN( $id_placeholders )"9
Category
Security
Occurrences
9
Severity
warning

Sample message

Use placeholders and $wpdb->prepare(); found interpolated variable $id_placeholders at "DELETE FROM {$wpdb->prefix}yay_smtp_sendgrid_email_logs WHERE ID IN( $id_placeholders )"

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

Sample message

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

ERRORSecuritySQL query is not preparedUse placeholders and $wpdb->prepare(); found $sortField7
Category
Security
Occurrences
7
Severity
error

Sample message

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

WARNINGSecurityRequest data is not unslashed$_POST['emailAddress'] not unslashed before sanitization. Use wp_unslash() or similar7
Category
Security
Occurrences
7
Severity
warning

Sample message

$_POST['emailAddress'] not unslashed before sanitization. Use wp_unslash() or similar

WARNINGSecurityInput is not sanitizedDetected usage of a non-sanitized input variable: $_POST['params']5
Category
Security
Occurrences
5
Severity
warning

Sample message

Detected usage of a non-sanitized input variable: $_POST['params']

ERRORI18nNon Singular String Literal TextThe $text parameter must be a single text string literal. Found: $disPlayText4
Category
I18n
Occurrences
4
Severity
error

Sample message

The $text parameter must be a single text string literal. Found: $disPlayText

ERRORMaintainabilitywp function not compatible with requires wpFunction "determine_locale()" requires WordPress 5.0.0, but your plugin minimum supported version is WordPress 4.0.0.4
Category
Maintainability
Occurrences
4
Severity
error

Sample message

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

Show 15 more
ERRORMaintainabilityfile system operations fwrite3
Category
Maintainability
Occurrences
3
Severity
error

Sample message

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

WARNINGSecurityDatabase parameter is not escaped2
Category
Security
Occurrences
2
Severity
warning

Sample message

Unescaped parameter $table used in $wpdb->get_var()\n$table assigned unsafely at line 186.

WARNINGMaintainabilityNon-prefixed hook name2
Category
Maintainability
Occurrences
2
Severity
warning

Sample message

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

WARNINGMaintainabilityerror log print r2
Category
Maintainability
Occurrences
2
Severity
warning

Sample message

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

ERRORMaintainabilityfile system operations fclose2
Category
Maintainability
Occurrences
2
Severity
error

Sample message

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

ERRORMaintainabilityfile system operations fopen2
Category
Maintainability
Occurrences
2
Severity
error

Sample message

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

ERRORSecurityDatabase parameter is not escaped1
Category
Security
Occurrences
1
Severity
error

Sample message

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

WARNINGSecurityUnfinished Prepare1
Category
Security
Occurrences
1
Severity
warning

Sample message

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

WARNINGSecurityInput is not validated1
Category
Security
Occurrences
1
Severity
warning

Sample message

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

ERRORMaintainabilityfile system operations chmod1
Category
Maintainability
Occurrences
1
Severity
error

Sample message

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

ERRORMaintainabilityfile system operations mkdir1
Category
Maintainability
Occurrences
1
Severity
error

Sample message

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

ERRORI18nMissing Arg Domain1
Category
I18n
Occurrences
1
Severity
error

Sample message

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

WARNINGMaintainabilitymismatched plugin name1
Category
Maintainability
Occurrences
1
Severity
warning

Sample message

Plugin name "SMTP for SendGrid - YaySMTP" is different from the name declared in plugin header "SMTP for SendGrid – YaySMTP".

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.

WARNINGRepo Compliancereadme parser warnings no short description present1
Category
Repo Compliance
Occurrences
1
Severity
warning

Sample message

The "Short Description" section is missing. An excerpt was generated from your main plugin description.

External Connections

Not analyzed yet.

Score History

First score snapshot

v1.5.1

36

Latest

Findings
123
Errors
27
Warnings
96
Check
2.0.0

Relationship Map

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

29 nodes

Related Plugins

Elastic Email Sender

10k+ active installs

96
Connect SendGrid for Emails

900 active installs

59
GoSMTP – SMTP for WordPress

500k+ active installs

39
WP SendGrid SMTP

1k+ active installs

39