Internal Link Juicer: SEO Auto Linker for WordPress

Improve your SEO and your user experience through internal linkbuilding. Automated links between your posts based on a smart keyword configuration.

v2.26.0David Anderson / Team UpdraftUpdated Added 90k+ installs94% rating67% support resolved
57
Score
12
Errors
61
Warnings
+0
Change

Category Scores

Security32
Repo91
Performance94
Maintainability82

Top Issues by Category

Issues Details

73 issues found in latest scan

WARNING37
PluginCheck.Security.DirectDB.UnescapedDBParameter

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

WARNING11
WordPress.DB.PreparedSQL.InterpolatedNotPrepared

Use placeholders and $wpdb->prepare(); found interpolated variable {$dummy_table} at "RENAME TABLE {$dummy_table} TO {$temp_table};"

ERROR7
missing_direct_file_access_protection

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

WARNING2
WordPress.DB.DirectDatabaseQuery.DirectQuery

Use of a direct database call is discouraged.

WARNING2
WordPress.DB.DirectDatabaseQuery.NoCaching

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

WARNING2
WordPress.DB.SlowDBQuery.slow_db_query_meta_key

Detected usage of meta_key, possible slow query.

WARNING1
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.

ERROR1
WordPress.DB.PreparedSQL.NotPrepared

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

WARNING1
WordPress.PHP.DevelopmentFunctions.error_log_trigger_error

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

ERROR1
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.

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.

ERROR1
WordPressVIPMinimum.Performance.WPQueryParams.SuppressFilters_suppress_filters

Setting `suppress_filters` to `true` is prohibited.

ERROR1
five_star_reviews_detected

Linking directly to 5 stars reviews is not allowed.

WARNING1
mismatched_plugin_name

Plugin name "Internal Link Juicer: SEO Auto Linker for WordPress" is different from the name declared in plugin header "Internal Link Juicer".

WARNING1
missing_composer_json_file

The "/vendor" directory using composer exists, but "composer.json" file is missing.

ERROR1
outdated_tested_upto_header

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

WARNING1
readme_parser_warnings_too_many_tags

One or more tags were ignored. Please limit your plugin to 5 tags.

WARNING1
trademarked_term

The plugin name includes a restricted term. Your chosen plugin name - "Internal Link Juicer: SEO Auto Linker for WordPress" - contains the restricted term "wordpress" which cannot be used at all in your plugin name.

Latest Snapshot

Findings

73

Errors

12

Warnings

61

Score History

First score snapshot

First scan completed

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

v2.26.0

57

Latest

Findings
73
Errors
12
Warnings
61
Plugin Check
2.0.0
Model
2026.06-mvp-static-v2

Related Plugins