New User Approve

WordPress user approval plugin to moderate registrations. Approve or deny real users and prevent fake signups to control who registers on site.

v3.2.8Saad IqbalUpdated Added 20k+ installs86% rating
24
Score
652
Errors
1,415
Warnings
+0
Change

Category Scores

Security0
Repo94
Performance98
Maintainability0

Top Issues by Category

maintainability1,539
1Non Prefixed Variable FoundWordPress.NamingConventions.PrefixAllGlobals.NonPrefixedVariableFoundWARNING1,0942Non Prefixed Function FoundWordPress.NamingConventions.PrefixAllGlobals.NonPrefixedFunctionFoundWARNING1393wp function not compatible with requires wpwp_function_not_compatible_with_requires_wpERROR1164Non Prefixed Class FoundWordPress.NamingConventions.PrefixAllGlobals.NonPrefixedClassFoundWARNING675Non Prefixed Hookname FoundWordPress.NamingConventions.PrefixAllGlobals.NonPrefixedHooknameFoundWARNING596Non Prefixed Constant FoundWordPress.NamingConventions.PrefixAllGlobals.NonPrefixedConstantFoundWARNING307missing direct file access protectionmissing_direct_file_access_protectionERROR98Direct QueryWordPress.DB.DirectDatabaseQuery.DirectQueryWARNING59No CachingWordPress.DB.DirectDatabaseQuery.NoCachingWARNING410Missing VersionWordPress.WP.EnqueuedResourceParameters.MissingVersionWARNING311Schema ChangeWordPress.DB.DirectDatabaseQuery.SchemaChangeWARNING212Dynamic Hookname FoundWordPress.NamingConventions.PrefixAllGlobals.DynamicHooknameFoundWARNING213Non Prefixed Namespace FoundWordPress.NamingConventions.PrefixAllGlobals.NonPrefixedNamespaceFoundWARNING214plugin updater detectedplugin_updater_detectedERROR215update modification detectedupdate_modification_detectedWARNING216Plugin Directory WritePluginCheck.CodeAnalysis.WriteFile.PluginDirectoryWriteERROR117Non Prefixed Interface FoundWordPress.NamingConventions.PrefixAllGlobals.NonPrefixedInterfaceFoundWARNING118Not In FooterWordPress.WP.EnqueuedResourceParameters.NotInFooterWARNING1
security525
i18n1
performance1

Issues Details

2,067 issues found in latest scan

WARNING1,094
WordPress.NamingConventions.PrefixAllGlobals.NonPrefixedVariableFound

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

ERROR514
WordPress.Security.EscapeOutput.OutputNotEscaped

All output should be run through an escaping function (see the Security sections in the WordPress Developer Handbooks), found '" <a href='{$skip_url}' class='button button-small button-secondary'>{$use_plugin_anonymously_text}</a>"'.

WARNING139
WordPress.NamingConventions.PrefixAllGlobals.NonPrefixedFunctionFound

Functions declared in the global namespace by a theme/plugin should start with the theme/plugin prefix. Found: &quot;_fs_text&quot;.

ERROR116
wp_function_not_compatible_with_requires_wp

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

WARNING67
WordPress.NamingConventions.PrefixAllGlobals.NonPrefixedClassFound

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

WARNING59
WordPress.NamingConventions.PrefixAllGlobals.NonPrefixedHooknameFound

Hook names invoked by a theme/plugin should start with the theme/plugin prefix. Found: &quot;all_users_limit&quot;.

WARNING30
WordPress.NamingConventions.PrefixAllGlobals.NonPrefixedConstantFound

Global constants defined by a theme/plugin should start with the theme/plugin prefix. Found: &quot;FS_API__ADDRESS&quot;.

ERROR9
missing_direct_file_access_protection

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

ERROR7
WordPress.Security.EscapeOutput.ExceptionNotEscaped

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

WARNING5
WordPress.DB.DirectDatabaseQuery.DirectQuery

Use of a direct database call is discouraged.

WARNING4
WordPress.DB.DirectDatabaseQuery.NoCaching

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

WARNING3
WordPress.WP.EnqueuedResourceParameters.MissingVersion

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

WARNING2
PluginCheck.Security.DirectDB.UnescapedDBParameter

Unescaped parameter $query used in $wpdb-&gt;get_results()\n$query assigned unsafely at line 107.

WARNING2
WordPress.DB.DirectDatabaseQuery.SchemaChange

Attempting a database schema change is discouraged.

WARNING2
WordPress.NamingConventions.PrefixAllGlobals.DynamicHooknameFound

Hook names invoked by a theme/plugin should start with the theme/plugin prefix. Found: &quot;{$module_type}_update_check_locales&quot;.

WARNING2
WordPress.NamingConventions.PrefixAllGlobals.NonPrefixedNamespaceFound

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

ERROR2
plugin_updater_detected

Plugin Updater detected. These are not permitted in WordPress.org hosted plugins. Detected: class FS_Plugin_Updater

WARNING2
update_modification_detected

Plugin Updater detected. Detected code which may be altering WordPress update routines. Detected: _site_transient_update_plugins

ERROR1
PluginCheck.CodeAnalysis.WriteFile.PluginDirectoryWrite

Plugin folders are deleted when upgraded. Do not save data to the plugin folder using copy(). Detected usage of constant WP_PLUGIN_DIR. Use wp_upload_dir() to get the uploads directory path or save to the database instead.

ERROR1
PluginCheck.Security.DirectDB.UnescapedDBParameter

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

WARNING1
WordPress.NamingConventions.PrefixAllGlobals.NonPrefixedInterfaceFound

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

WARNING1
WordPress.Security.SafeRedirect.wp_redirect_wp_redirect

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.

WARNING1
WordPress.WP.EnqueuedResourceParameters.NotInFooter

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.

ERROR1
WordPress.WP.I18n.MissingArgDomain

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

WARNING1
WordPressVIPMinimum.Performance.WPQueryParams.PostNotIn_post__not_in

Using exclusionary parameters, like post__not_in, 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.

Latest Snapshot

Findings

2,067

Errors

652

Warnings

1,415

Score History

First score snapshot

First scan completed

v3.2.8 · Plugin Check 2.0.0 · Model 2026.06-mvp-static-v2

v3.2.8

24

Latest

Findings
2,067
Errors
652
Warnings
1,415
Plugin Check
2.0.0
Model
2026.06-mvp-static-v2

Related Plugins