Maspik – Ultimate Spam Protection

No more fake leads or unwanted submissions — Maspik blocks spam instantly across all forms without using CAPTCHA.

v2.9.0yonifreUpdated Added 30k+ installs94% rating0% support resolved
28
Score
212
Errors
864
Warnings
+0
Change

Category Scores

Security0
Repo100
Performance100
Maintainability14

Top Issues by Category

security665
maintainability385
i18n16

Issues Details

1,076 issues found in latest scan

WARNING211
WordPress.Security.NonceVerification.Missing

Processing form data without nonce verification.

WARNING163
WordPress.NamingConventions.PrefixAllGlobals.NonPrefixedVariableFound

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

ERROR142
WordPress.Security.EscapeOutput.OutputNotEscaped

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

WARNING85
WordPress.Security.ValidatedSanitizedInput.MissingUnslash

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

WARNING70
WordPress.Security.ValidatedSanitizedInput.InputNotSanitized

Detected usage of a non-sanitized input variable: $_FILES['maspik-settings']

WARNING60
WordPress.DB.DirectDatabaseQuery.DirectQuery

Use of a direct database call is discouraged.

WARNING57
WordPress.DB.DirectDatabaseQuery.NoCaching

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

WARNING55
WordPress.DB.PreparedSQL.InterpolatedNotPrepared

Use placeholders and $wpdb->prepare(); found interpolated variable $column_name at "SELECT COUNT(*) FROM $table_name WHERE $column_name = %s"

WARNING46
WordPress.NamingConventions.PrefixAllGlobals.NonPrefixedFunctionFound

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

WARNING32
PluginCheck.Security.DirectDB.UnescapedDBParameter

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

WARNING32
WordPress.Security.NonceVerification.Recommended

Processing form data without nonce verification.

WARNING29
WordPress.PHP.DevelopmentFunctions.error_log_error_log

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

ERROR13
WordPress.WP.I18n.MissingTranslatorsComment

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.

ERROR11
WordPress.DateTime.RestrictedFunctions.date_date

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

WARNING11
WordPress.Security.ValidatedSanitizedInput.InputNotValidated

Detected usage of a possibly undefined superglobal array index: $_FILES['maspik-settings']['error']. Check that the array index exists before using it.

ERROR10
PluginCheck.Security.DirectDB.UnescapedDBParameter

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

ERROR10
WordPress.Security.EscapeOutput.ExceptionNotEscaped

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

ERROR7
WordPress.DB.PreparedSQL.NotPrepared

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

ERROR6
PluginCheck.CodeAnalysis.EnqueuedResourceOffloading.OffloadedContent

Found call to wp_enqueue_script() with external resource. Offloading scripts to your servers or any remote service is disallowed.

WARNING3
WordPress.NamingConventions.PrefixAllGlobals.NonPrefixedClassFound

Classes declared by a theme/plugin should start with the theme/plugin prefix. Found: "Settings_Page_Activator".

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.

ERROR3
WordPress.WP.I18n.UnorderedPlaceholdersText

Multiple placeholders in translatable strings should be ordered. Expected "%1$s, %2$s", but got "%s, %s" in 'Error occurred while saving %s: %s '.

ERROR3
missing_direct_file_access_protection

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

ERROR2
WordPress.WP.AlternativeFunctions.parse_url_parse_url

parse_url() is discouraged because of inconsistency in the output across PHP versions; use wp_parse_url() instead.

WARNING2
unexpected_markdown_file

Unexpected markdown file "CLAUDE.md" detected in plugin root. Only specific markdown files are expected in production plugins.

Latest Snapshot

Findings

1,076

Errors

212

Warnings

864

Score History

First score snapshot

First scan completed

v2.9.0 · Plugin Check 2.0.0 · Model 2026.06-mvp-static-v2

v2.9.0

28

Latest

Findings
1,076
Errors
212
Warnings
864
Plugin Check
2.0.0
Model
2026.06-mvp-static-v2

Related Plugins