Never Let Me Go

If someone wants to leave your WordPress, let them go.

v2.0.3Fumiki TakahashiUpdated Added 400 installs0% rating
35
Score
34
Errors
47
Warnings
+0
Change

Category Scores

Security0
Repo85
Performance100
Maintainability76

Issues to Review

Prioritized issue groups from the latest Plugin Check scan

81 findings

Maintainability

35

10 issue groups

Security

34

9 issue groups

I18n

10

3 issue groups

Supply Chain

1

1 issue group

WARNINGMaintainabilityNon-prefixed namespaceNamespaces declared by a theme/plugin should start with the theme/plugin prefix. Found: "NeverLetMeGo".9
Category
Maintainability
Occurrences
9
Severity
warning

Sample message

Namespaces declared by a theme/plugin should start with the theme/plugin prefix. Found: "NeverLetMeGo".

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

Sample message

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

ERRORSecurityOutput is not escapedAll output should be run through an escaping function (see the Security sections in the WordPress Developer Handbooks), found '$level'.8
Category
Security
Occurrences
8
Severity
error

Sample message

All output should be run through an escaping function (see the Security sections in the WordPress Developer Handbooks), found '$level'.

ERRORI18nMissing Translators CommentA 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.8
Category
I18n
Occurrences
8
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.

ERRORSecurityUnsafe printing functionAll output should be run through an escaping function (like esc_html_e() or esc_attr_e()), found '_e'.6
Category
Security
Occurrences
6
Severity
error

Sample message

All output should be run through an escaping function (like esc_html_e() or esc_attr_e()), found '_e'.

ERRORMaintainabilityNot AllowedUse of heredoc syntax (<<<) is not allowed; use standard strings or inline HTML instead4
Category
Maintainability
Occurrences
4
Severity
error

Sample message

Use of heredoc syntax (<<<) is not allowed; use standard strings or inline HTML instead

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

Sample message

Use of a direct database call is discouraged.

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

Sample message

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

WARNINGSecurityNonce verification recommendedProcessing form data without nonce verification.4
Category
Security
Occurrences
4
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().3
Category
Maintainability
Occurrences
3
Severity
warning

Sample message

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

Show 14 more
WARNINGSecuritywp redirect wp redirect3
Category
Security
Occurrences
3
Severity
warning

Sample message

wp_redirect() found. Using wp_safe_redirect(), along with the &quot;allowed_redirect_hosts&quot; filter if needed, can help avoid any chances of malicious redirects within code. It is also important to remember to call exit() after a redirect so that no other unwanted code is executed.

WARNINGSecurityInput is not sanitized3
Category
Security
Occurrences
3
Severity
warning

Sample message

Detected usage of a non-sanitized input variable: $_GET[$name]

WARNINGSecurityRequest data is not unslashed3
Category
Security
Occurrences
3
Severity
warning

Sample message

$_GET[$name] not unslashed before sanitization. Use wp_unslash() or similar

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: &quot;never_let_me_go&quot;.

WARNINGSecurityMissing nonce verification2
Category
Security
Occurrences
2
Severity
warning

Sample message

Processing form data without nonce verification.

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.

ERRORSecurityDatabase parameter is not escaped1
Category
Security
Occurrences
1
Severity
error

Sample message

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

WARNINGMaintainabilityslow db query meta query1
Category
Maintainability
Occurrences
1
Severity
warning

Sample message

Detected usage of meta_query, possible slow query.

WARNINGMaintainabilityNon-prefixed class1
Category
Maintainability
Occurrences
1
Severity
warning

Sample message

Classes declared by a theme/plugin should start with the theme/plugin prefix. Found: &quot;NeverLetMeGo&quot;.

WARNINGI18nNo Html Wrapped Strings1
Category
I18n
Occurrences
1
Severity
warning

Sample message

Translatable string should not be wrapped in HTML. Found: &#039;&lt;strong&gt;[Never Let Me Go] Plugin is active but features are not enabled. Please go to &lt;a href=&quot;%s&quot;&gt;setting page&lt;/a&gt;.&lt;/strong&gt;&#039;

ERRORSupply ChainHidden files included1
Category
Supply Chain
Occurrences
1
Severity
error

Sample message

Hidden files are not permitted.

WARNINGMaintainabilitymissing composer json file1
Category
Maintainability
Occurrences
1
Severity
warning

Sample message

The &quot;/vendor&quot; directory using composer exists, but &quot;composer.json&quot; file is missing.

ERRORMaintainabilityMissing direct file access protection1
Category
Maintainability
Occurrences
1
Severity
error

Sample message

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

ERRORRepo Complianceoutdated tested upto header1
Category
Repo Compliance
Occurrences
1
Severity
error

Sample message

Tested up to: 6.6 < 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.

External Connections

Potential connections found in static code analysis.

6 domains

Outbound calls

9

External assets

0

Incoming endpoints

2

Notable Domains

gianism.info2 · outbound
php-fig.org2 · outbound
getcomposer.org1 · outbound
takahashifumiki.com1 · outbound

Platform / Reference Domains

github.com2 · platform/reference
wordpress.org1 · platform/reference

External Asset Domains

No external asset domains detected.

Incoming Endpoints

/wp-json/nlmg/v1/resignREST

register_rest_route

Admin AJAX endpoints1
wp_ajax_nlmg_user_searchauthenticated

wp_ajax

Score History

First score snapshot

v2.0.3

35

Latest

Findings
81
Errors
34
Warnings
47
Check
2.0.0

Relationship Map

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

30 nodes

Related Plugins

Remove Author Pages

3k+ active installs

98
WP Favicon Remover

10k+ active installs

97
Bulk Delete

30k+ active installs

96
Delete Post with Attachments

1k+ active installs

96
Post Lockdown

1k+ active installs

95
Support Me

900 active installs

70