YARPP – Yet Another Related Posts Plugin

The best WordPress plugin for displaying related posts. Simple and flexible, with a powerful proven algorithm and inbuilt caching.

v5.30.11YARPPUpdated Added 100k+ installs96% rating0% support resolved
27
Score
191
Errors
331
Warnings
+0
Change

Category Scores

Security0
Repo83
Performance94
Maintainability26

Issues to Review

Prioritized issue groups from the latest Plugin Check scan

522 findings

Maintainability

246

11 issue groups

Security

234

10 issue groups

I18n

21

3 issue groups

Performance

6

1 issue group

WARNINGMaintainabilityNon Prefixed Variable FoundGlobal variables defined by a theme/plugin should start with the theme/plugin prefix. Found: "$add_image_size_by_yarpp".116
Category
Maintainability
Occurrences
116
Severity
warning

Sample message

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

ERRORSecurityOutput Not EscapedAll output should be run through an escaping function (see the Security sections in the WordPress Developer Handbooks), found '" name='include_post_type[{$post_type->name}]' id='include_post_type_{$post_type->name}' value='true' /> <label for='include_post_type_{$post_type->name}'>"'.87
Category
Security
Occurrences
87
Severity
error

Sample message

All output should be run through an escaping function (see the Security sections in the WordPress Developer Handbooks), found '" name='include_post_type[{$post_type->name}]' id='include_post_type_{$post_type->name}' value='true' /> <label for='include_post_type_{$post_type->name}'>"'.

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

Sample message

Use of a direct database call is discouraged.

WARNINGSecurityMissing Unslash$_GET[&#039;_wpnonce&#039;] not unslashed before sanitization. Use wp_unslash() or similar33
Category
Security
Occurrences
33
Severity
warning

Sample message

$_GET[&#039;_wpnonce&#039;] not unslashed before sanitization. Use wp_unslash() or similar

WARNINGSecurityInput Not SanitizedDetected usage of a non-sanitized input variable: $_GET[&#039;_wpnonce&#039;]30
Category
Security
Occurrences
30
Severity
warning

Sample message

Detected usage of a non-sanitized input variable: $_GET[&#039;_wpnonce&#039;]

WARNINGMaintainabilityNo CachingDirect database call without caching detected. Consider using wp_cache_get() / wp_cache_set() or wp_cache_delete().27
Category
Maintainability
Occurrences
27
Severity
warning

Sample message

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

ERRORSecurityNot PreparedUse placeholders and $wpdb->prepare(); found $args27
Category
Security
Occurrences
27
Severity
error

Sample message

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

ERRORMaintainabilitymissing direct file access protectionPHP file should prevent direct access. Add a check like: if ( ! defined( 'ABSPATH' ) ) exit;24
Category
Maintainability
Occurrences
24
Severity
error

Sample message

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

WARNINGSecurityRecommendedProcessing form data without nonce verification.16
Category
Security
Occurrences
16
Severity
warning

Sample message

Processing form data without nonce verification.

WARNINGSecurityInput Not ValidatedDetected usage of a possibly undefined superglobal array index: $_GET[&#039;page&#039;]. Check that the array index exists before using it.15
Category
Security
Occurrences
15
Severity
warning

Sample message

Detected usage of a possibly undefined superglobal array index: $_GET[&#039;page&#039;]. Check that the array index exists before using it.

Show 15 more
ERRORI18nMissing Translators Comment15
Category
I18n
Occurrences
15
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.

WARNINGSecurityInterpolated Not Prepared11
Category
Security
Occurrences
11
Severity
warning

Sample message

Use placeholders and $wpdb-&gt;prepare(); found interpolated variable $charset_collate at \t\t\t)$charset_collate;&quot;

ERRORMaintainabilitywp function not compatible with requires wp11
Category
Maintainability
Occurrences
11
Severity
error

Sample message

Function "get_user_count()" requires WordPress 4.8.0, but your plugin minimum supported version is WordPress 3.7.0.

ERRORSecurityUnsafe Printing Function9
Category
Security
Occurrences
9
Severity
error

Sample message

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

WARNINGMaintainabilityNon Prefixed Hookname Found8
Category
Maintainability
Occurrences
8
Severity
warning

Sample message

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

WARNINGMaintainabilitySchema Change7
Category
Maintainability
Occurrences
7
Severity
warning

Sample message

Attempting a database schema change is discouraged.

WARNINGMaintainabilityNon Prefixed Function Found7
Category
Maintainability
Occurrences
7
Severity
warning

Sample message

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

WARNINGPerformancePost Not In exclude6
Category
Performance
Occurrences
6
Severity
warning

Sample message

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.

WARNINGMaintainabilityNot In Footer4
Category
Maintainability
Occurrences
4
Severity
warning

Sample message

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.

WARNINGSecurityUnescaped DBParameter3
Category
Security
Occurrences
3
Severity
warning

Sample message

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

ERRORSecurityUnescaped DBParameter3
Category
Security
Occurrences
3
Severity
error

Sample message

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

ERRORMaintainabilitySTYLESHEETPATHUsage Found3
Category
Maintainability
Occurrences
3
Severity
error

Sample message

Found usage of constant "STYLESHEETPATH". Use get_stylesheet_directory() instead.

ERRORI18nMissing Arg Domain3
Category
I18n
Occurrences
3
Severity
error

Sample message

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

ERRORI18nNon Singular String Literal Text3
Category
I18n
Occurrences
3
Severity
error

Sample message

The $text parameter must be a single text string literal. Found: 'There is a new beta (%s) of Yet Another Related Posts Plugin. ' .\n 'You can <a href="%s">download it here</a> at your own risk.'

WARNINGMaintainabilitytrademarked term3
Category
Maintainability
Occurrences
3
Severity
warning

Sample message

The plugin name includes a restricted term. Your chosen plugin name - "YARPP - Yet Another Related Posts Plugin" - contains the restricted term "plugin" which cannot be used at all in your plugin name.

Score History

First score snapshot

v5.30.11

27

Latest

Findings
522
Errors
191
Warnings
331
Check
2.0.0

Related Plugins

noindex SEO

3k+ active installs

100
AIKTP

3k+ active installs

99
Canonical Link

2k+ active installs

99
99
Essential Widgets

10k+ active installs

99
Featured Image

1k+ active installs

99