The best WordPress plugin for related posts. Simple, flexible, powerful algorithm, and built-in caching. Fully setup with only 1 click!
Category Scores
Issues to Review
Prioritized issue groups from the latest Plugin Check scan
Security
277
12 issue groups
Maintainability
62
9 issue groups
I18n
38
4 issue groups
ERRORSecurityOutput Not EscapedAll output should be run through an escaping function (see the Security sections in the WordPress Developer Handbooks), found '"<h3>{$section['title']}</h3>\n"'.76
- Category
- Security
- Occurrences
- 76
- Severity
- error
Sample message
All output should be run through an escaping function (see the Security sections in the WordPress Developer Handbooks), found '"<h3>{$section['title']}</h3>\n"'.
ERRORSecurityUnsafe Printing FunctionAll output should be run through an escaping function (like esc_html_e() or esc_attr_e()), found '_e'.39
- Category
- Security
- Occurrences
- 39
- Severity
- error
Sample message
All output should be run through an escaping function (like esc_html_e() or esc_attr_e()), found '_e'.
WARNINGSecurityRecommendedProcessing form data without nonce verification.34
- Category
- Security
- Occurrences
- 34
- Severity
- warning
Sample message
Processing form data without nonce verification.
ERRORSecurityNot PreparedUse placeholders and $wpdb->prepare(); found $batch_data31
- Category
- Security
- Occurrences
- 31
- Severity
- error
Sample message
Use placeholders and $wpdb->prepare(); found $batch_data
WARNINGSecurityInput Not SanitizedDetected usage of a non-sanitized input variable: $_GET['lang']30
- Category
- Security
- Occurrences
- 30
- Severity
- warning
Sample message
Detected usage of a non-sanitized input variable: $_GET['lang']
WARNINGSecurityMissing Unslash$_GET['lang'] not unslashed before sanitization. Use wp_unslash() or similar30
- Category
- Security
- Occurrences
- 30
- Severity
- warning
Sample message
$_GET['lang'] not unslashed before sanitization. Use wp_unslash() or similar
WARNINGMaintainabilityDirect QueryUse of a direct database call is discouraged.21
- Category
- Maintainability
- Occurrences
- 21
- Severity
- warning
Sample message
Use of a direct database call is discouraged.
WARNINGMaintainabilityNo CachingDirect database call without caching detected. Consider using wp_cache_get() / wp_cache_set() or wp_cache_delete().21
- Category
- Maintainability
- Occurrences
- 21
- Severity
- warning
Sample message
Direct database call without caching detected. Consider using wp_cache_get() / wp_cache_set() or wp_cache_delete().
ERRORI18nMissing Translators CommentA 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.15
- 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.
ERRORI18nUnordered Placeholders TextMultiple placeholders in translatable strings should be ordered. Expected "%1$s, %2$s", but got "%s, %s" in '%sView All Premium Features%s'.14
- Category
- I18n
- Occurrences
- 14
- Severity
- error
Sample message
Multiple placeholders in translatable strings should be ordered. Expected "%1$s, %2$s", but got "%s, %s" in '%sView All Premium Features%s'.
Show 15 moreShow less
ERRORSecurityUnescaped DBParameter13
- Category
- Security
- Occurrences
- 13
- Severity
- error
Sample message
Unescaped parameter $data['meta'][0] used in $wpdb->query()\n$data['meta'][0] used without escaping.
WARNINGSecurityInput Not Validated10
- Category
- Security
- Occurrences
- 10
- Severity
- warning
Sample message
Detected usage of a possibly undefined superglobal array index: $_GET['rp4wp_parent']. Check that the array index exists before using it.
ERRORI18nMissing Arg Domain6
- Category
- I18n
- Occurrences
- 6
- Severity
- error
Sample message
Missing $domain parameter in function call to __().
WARNINGSecuritywp redirect wp redirect5
- Category
- Security
- Occurrences
- 5
- Severity
- warning
Sample message
wp_redirect() found. Using wp_safe_redirect(), along with the "allowed_redirect_hosts" filter if needed, can help avoid any chances of malicious redirects within code. It is also important to remember to call exit() after a redirect so that no other unwanted code is executed.
WARNINGMaintainabilityslow db query meta query4
- Category
- Maintainability
- Occurrences
- 4
- Severity
- warning
Sample message
Detected usage of meta_query, possible slow query.
WARNINGSecurityMissing4
- Category
- Security
- Occurrences
- 4
- Severity
- warning
Sample message
Processing form data without nonce verification.
WARNINGSecurityInterpolated Not Prepared3
- Category
- Security
- Occurrences
- 3
- Severity
- warning
Sample message
Use placeholders and $wpdb->prepare(); found interpolated variable {$data['meta'][0]} at \t\t\t\t{$data['meta'][0]},\n
ERRORMaintainabilitystrip tags strip tags3
- Category
- Maintainability
- Occurrences
- 3
- Severity
- error
Sample message
strip_tags() is discouraged. Use the more comprehensive wp_strip_all_tags() instead.
WARNINGMaintainabilityNot In Footer3
- Category
- Maintainability
- Occurrences
- 3
- 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.
ERRORI18nNon Singular String Literal Text3
- Category
- I18n
- Occurrences
- 3
- Severity
- error
Sample message
The $text parameter must be a single text string literal. Found: $_REQUEST['page']
ERRORMaintainabilitymissing direct file access protection3
- Category
- Maintainability
- Occurrences
- 3
- Severity
- error
Sample message
PHP file should prevent direct access. Add a check like: if ( ! defined( 'ABSPATH' ) ) exit;
WARNINGMaintainabilitytrademarked term3
- Category
- Maintainability
- Occurrences
- 3
- Severity
- warning
Sample message
The plugin name includes a restricted term. Your chosen plugin name - "Related Posts for WordPress" - contains the restricted term "wordpress" which cannot be used at all in your plugin name.
WARNINGSecurityUnescaped DBParameter2
- Category
- Security
- Occurrences
- 2
- Severity
- warning
Sample message
Unescaped parameter $this used in $wpdb->query()
WARNINGMaintainabilityNon Prefixed Variable Found2
- Category
- Maintainability
- Occurrences
- 2
- Severity
- warning
Sample message
Global variables defined by a theme/plugin should start with the theme/plugin prefix. Found: "$link_ids".
WARNINGMaintainabilityerror log trigger error2
- Category
- Maintainability
- Occurrences
- 2
- Severity
- warning
Sample message
trigger_error() found. Debug code should not normally be used in production.
Score History
First score snapshot
v2.3.0
35
Latest
- Findings
- 387
- Errors
- 207
- Warnings
- 180
- Check
- 2.0.0
| Scan | Score | Findings | Errors | Warnings | Plugin | Check |
|---|---|---|---|---|---|---|
| Latest | 35 | 387 | 207 | 180 | v2.3.0 | 2.0.0 |