SmartCrawl SEO checker, analyzer & optimizer

SEO checker, content analysis & SEO optimizer. Rank higher on search engines with 301 redirects, XML sitemaps & one-click setup.

v3.16.2WPMU DEV - Your All-in-One WordPress PlatformUpdated 2026-06-18Added Feb 12, 201820k+ installs96% rating50% support resolved
30
Score
347
Errors
1,307
Warnings
+0
Change

Category Scores

Security14
Repo83
Performance95
Maintainability0

Top Issues by Category

maintainability1,537
i18n76
security33
performance2

Issues Details

1,654 issues found in latest scan

WARNING1,074
WordPress.NamingConventions.PrefixAllGlobals.NonPrefixedVariableFound

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

ERROR244
missing_direct_file_access_protection

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

WARNING74
WordPress.NamingConventions.PrefixAllGlobals.NonPrefixedHooknameFound

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

ERROR73
WordPress.WP.I18n.TextDomainMismatch

Mismatched text domain. Expected 'smartcrawl-seo' but got 'plugin-cross-sell-textdomain'.

WARNING48
WordPress.DB.DirectDatabaseQuery.DirectQuery

Use of a direct database call is discouraged.

WARNING45
WordPress.DB.DirectDatabaseQuery.NoCaching

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

WARNING20
WordPress.NamingConventions.PrefixAllGlobals.DynamicHooknameFound

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

WARNING19
WordPress.DB.PreparedSQL.InterpolatedNotPrepared

Use placeholders and $wpdb->prepare(); found interpolated variable $column at \t\t\t\tSET `$column` = '$option_key',\n

ERROR15
badly_named_files

File and folder names must not contain spaces or special characters.

WARNING6
PluginCheck.Security.DirectDB.UnescapedDBParameter

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

WARNING6
WordPress.NamingConventions.PrefixAllGlobals.NonPrefixedFunctionFound

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

ERROR3
PluginCheck.Security.DirectDB.UnescapedDBParameter

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

WARNING3
WordPress.Security.NonceVerification.Missing

Processing form data without nonce verification.

WARNING2
PluginCheck.CodeAnalysis.DiscouragedFunctions.load_plugin_textdomainFound

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.

WARNING2
Squiz.PHP.DiscouragedFunctions.Discouraged

The use of function ini_set() is discouraged

WARNING2
WordPress.PHP.DevelopmentFunctions.error_log_error_log

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

ERROR2
WordPress.Security.EscapeOutput.OutputNotEscaped

All output should be run through an escaping function (see the Security sections in the WordPress Developer Handbooks), found '"Could not find $_tests_dir/includes/functions.php, have you run bin/install-wp-tests.sh ?"'.

ERROR2
WordPress.WP.AlternativeFunctions.file_system_operations_is_writable

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

WARNING2
WordPressVIPMinimum.Performance.WPQueryParams.PostNotIn_exclude

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

WARNING1
WordPress.NamingConventions.PrefixAllGlobals.NonPrefixedClassFound

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

ERROR1
WordPress.WP.AlternativeFunctions.file_system_operations_fclose

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

ERROR1
WordPress.WP.AlternativeFunctions.file_system_operations_fopen

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

ERROR1
WordPress.WP.AlternativeFunctions.file_system_operations_is_writeable

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

ERROR1
WordPress.WP.AlternativeFunctions.unlink_unlink

unlink() is discouraged. Use wp_delete_file() to delete a file.

ERROR1
WordPress.WP.I18n.MissingTranslatorsComment

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.

Latest Snapshot

Findings

1,654

Errors

347

Warnings

1,307

Score History

First score snapshot

First scan completed Jun 20, 2026

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

Jun 20, 2026

v3.16.2

30

Latest

Findings
1,654
Errors
347
Warnings
1,307
Plugin Check
2.0.0
Model
2026.06-mvp-static-v2

Related Plugins