Perfecty Push Notifications

Push Notifications that are self-hosted, you don't need API keys to integrate with external Push Notifications providers that will charge you lat …

v1.6.5PerfectyUpdated Added 4k+ installs92% rating
35
Score
204
Errors
213
Warnings
+0
Change

Category Scores

Security0
Repo91
Performance100
Maintainability57

Issues to Review

Prioritized issue groups from the latest Plugin Check scan

417 findings

Security

277

11 issue groups

Maintainability

128

11 issue groups

I18n

10

3 issue groups

ERRORSecurityNot PreparedUse placeholders and $wpdb->prepare(); found $allowed_logs_fields106
Category
Security
Occurrences
106
Severity
error

Sample message

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

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

Sample message

Use of a direct database call is discouraged.

WARNINGSecurityRecommendedProcessing form data without nonce verification.40
Category
Security
Occurrences
40
Severity
warning

Sample message

Processing form data without nonce verification.

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

Sample message

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

ERRORSecurityOutput Not EscapedAll output should be run through an escaping function (see the Security sections in the WordPress Developer Handbooks), found '" y: {$item->failed} },\n"'.38
Category
Security
Occurrences
38
Severity
error

Sample message

All output should be run through an escaping function (see the Security sections in the WordPress Developer Handbooks), found '" y: {$item->failed} },\n"'.

ERRORSecurityUnescaped DBParameterUnescaped parameter $sql used in $wpdb->get_results()\n$sql assigned unsafely at line 321.26
Category
Security
Occurrences
26
Severity
error

Sample message

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

WARNINGSecurityInput Not SanitizedDetected usage of a non-sanitized input variable: $_POST['perfecty_push_notification_custom_body']19
Category
Security
Occurrences
19
Severity
warning

Sample message

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

WARNINGSecurityMissing Unslash$_POST['perfecty_push_notification_custom_body'] not unslashed before sanitization. Use wp_unslash() or similar19
Category
Security
Occurrences
19
Severity
warning

Sample message

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

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

Sample message

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

WARNINGMaintainabilityerror log error logerror_log() found. Debug code should not normally be used in production.14
Category
Maintainability
Occurrences
14
Severity
warning

Sample message

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

Show 15 more
WARNINGSecurityInterpolated Not Prepared8
Category
Security
Occurrences
8
Severity
warning

Sample message

Use placeholders and $wpdb->prepare(); found interpolated variable $ids at " WHERE id IN ($ids)"

WARNINGSecurityInput Not Validated8
Category
Security
Occurrences
8
Severity
warning

Sample message

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

ERRORI18nMissing Translators Comment8
Category
I18n
Occurrences
8
Severity
error

Sample message

A function call to esc_html__() 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.

WARNINGSecurityUnescaped DBParameter7
Category
Security
Occurrences
7
Severity
warning

Sample message

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

WARNINGMaintainabilityNon Prefixed Variable Found6
Category
Maintainability
Occurrences
6
Severity
warning

Sample message

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

ERRORSecurityException Not Escaped5
Category
Security
Occurrences
5
Severity
error

Sample message

All output should be run through an escaping function (see the Security sections in the WordPress Developer Handbooks), found '"The order by [$order_by] field is not alllowed"'.

ERRORMaintainabilitydate date3
Category
Maintainability
Occurrences
3
Severity
error

Sample message

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

WARNINGMaintainabilityNon Prefixed Function Found3
Category
Maintainability
Occurrences
3
Severity
warning

Sample message

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

WARNINGMaintainabilityerror log print r3
Category
Maintainability
Occurrences
3
Severity
warning

Sample message

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

WARNINGMaintainabilitySchema Change2
Category
Maintainability
Occurrences
2
Severity
warning

Sample message

Attempting a database schema change is discouraged.

WARNINGI18nload plugin textdomain Found1
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.

WARNINGMaintainabilityslow db query meta query1
Category
Maintainability
Occurrences
1
Severity
warning

Sample message

Detected usage of meta_query, possible slow query.

WARNINGMaintainabilityerror log set error handler1
Category
Maintainability
Occurrences
1
Severity
warning

Sample message

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

WARNINGSecurityMissing1
Category
Security
Occurrences
1
Severity
warning

Sample message

Processing form data without nonce verification.

ERRORI18nNon Singular String Literal Text1
Category
I18n
Occurrences
1
Severity
error

Sample message

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

Score History

First score snapshot

v1.6.5

35

Latest

Findings
417
Errors
204
Warnings
213
Check
2.0.0

Related Plugins

Hide WP Admin Notifications

1k+ active installs

99
SAR Friendly SMTP

2k+ active installs

98
Hide All Notices

2k+ active installs

97