The best WordPress plugin for displaying related posts. Simple and flexible, with a powerful proven algorithm and inbuilt caching.
Category Scores
Issues to Review
Prioritized issue groups from the latest Plugin Check scan
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['_wpnonce'] not unslashed before sanitization. Use wp_unslash() or similar33
- Category
- Security
- Occurrences
- 33
- Severity
- warning
Sample message
$_GET['_wpnonce'] not unslashed before sanitization. Use wp_unslash() or similar
WARNINGSecurityInput Not SanitizedDetected usage of a non-sanitized input variable: $_GET['_wpnonce']30
- Category
- Security
- Occurrences
- 30
- Severity
- warning
Sample message
Detected usage of a non-sanitized input variable: $_GET['_wpnonce']
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['page']. 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['page']. Check that the array index exists before using it.
Show 15 moreShow less
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->prepare(); found interpolated variable $charset_collate at \t\t\t)$charset_collate;"
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: "get_the_score".
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: "clean".
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->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
| Scan | Score | Findings | Errors | Warnings | Plugin | Check |
|---|---|---|---|---|---|---|
| Latest | 27 | 522 | 191 | 331 | v5.30.11 | 2.0.0 |