Show branches or levels of your menu in a widget, or in content using a shortcode, with full customisation.
Category Scores
Issues to Review
Prioritized issue groups from the latest Plugin Check scan
Security
306
8 issue groups
Maintainability
23
8 issue groups
I18n
20
2 issue groups
Repo Compliance
4
4 issue groups
ERRORSecurityOutput is not escapedAll output should be run through an escaping function (see the Security sections in the WordPress Developer Handbooks), found '"$i "'.206
- Category
- Security
- Occurrences
- 206
- Severity
- error
Sample message
All output should be run through an escaping function (see the Security sections in the WordPress Developer Handbooks), found '"$i "'.
ERRORSecurityUnsafe printing functionAll output should be run through an escaping function (like echo esc_html_x() or echo esc_attr_x()), found '_ex'.91
- Category
- Security
- Occurrences
- 91
- Severity
- error
Sample message
All output should be run through an escaping function (like echo esc_html_x() or echo esc_attr_x()), found '_ex'.
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.16
- Category
- I18n
- Occurrences
- 16
- 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.
WARNINGMaintainabilityupgrade notice limitThe upgrade notice for "1.2.0" exceeds the limit of 300 characters.10
- Category
- Maintainability
- Occurrences
- 10
- Severity
- warning
Sample message
The upgrade notice for "1.2.0" exceeds the limit of 300 characters.
ERRORI18nNon Singular String Literal TextThe $text parameter must be a single text string literal. Found: htmlspecialchars('Text/HTML to go after the </a> of the link')4
- Category
- I18n
- Occurrences
- 4
- Severity
- error
Sample message
The $text parameter must be a single text string literal. Found: htmlspecialchars('Text/HTML to go after the </a> of the link')
ERRORMaintainabilitystrip tags strip tagsstrip_tags() is discouraged. Use the more comprehensive wp_strip_all_tags() instead.3
- Category
- Maintainability
- Occurrences
- 3
- Severity
- error
Sample message
strip_tags() is discouraged. Use the more comprehensive wp_strip_all_tags() instead.
WARNINGPerformancePost Not In excludeUsing 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.3
- Category
- Performance
- Occurrences
- 3
- 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.
ERRORSecurityDatabase parameter is not escapedUnescaped parameter $sql used in $wpdb->get_col()\n$sql assigned unsafely at line 430.2
- Category
- Security
- Occurrences
- 2
- Severity
- error
Sample message
Unescaped parameter $sql used in $wpdb->get_col()\n$sql assigned unsafely at line 430.
WARNINGMaintainabilityDirect QueryUse of a direct database call is discouraged.2
- Category
- Maintainability
- Occurrences
- 2
- 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().2
- Category
- Maintainability
- Occurrences
- 2
- Severity
- warning
Sample message
Direct database call without caching detected. Consider using wp_cache_get() / wp_cache_set() or wp_cache_delete().
Show 13 moreShow less
ERRORSecuritySQL query is not prepared2
- Category
- Security
- Occurrences
- 2
- Severity
- error
Sample message
Use placeholders and $wpdb->prepare(); found $sql
WARNINGMaintainabilityNon-prefixed hook name2
- Category
- Maintainability
- Occurrences
- 2
- Severity
- warning
Sample message
Hook names invoked by a theme/plugin should start with the theme/plugin prefix. Found: "the_title".
WARNINGMaintainabilityNon-prefixed global variable2
- Category
- Maintainability
- Occurrences
- 2
- Severity
- warning
Sample message
Variable variable which could potentially override an imported global variable detected. Global variables defined by a theme/plugin should start with the theme/plugin prefix. Found: "$$j".
WARNINGSecurityNonce verification recommended2
- Category
- Security
- Occurrences
- 2
- Severity
- warning
Sample message
Processing form data without nonce verification.
ERRORMaintainabilityForbidden PHP function found1
- Category
- Maintainability
- Occurrences
- 1
- Severity
- error
Sample message
The use of function wp_get_sidebars_widgets() is forbidden
WARNINGSecurityInput is not sanitized1
- Category
- Security
- Occurrences
- 1
- Severity
- warning
Sample message
Detected usage of a non-sanitized input variable: $_GET['editwidget']
WARNINGSecurityRequest data is not unslashed1
- Category
- Security
- Occurrences
- 1
- Severity
- warning
Sample message
$_GET['editwidget'] not unslashed before sanitization. Use wp_unslash() or similar
WARNINGSecurityDeprecated function: like_escape1
- Category
- Security
- Occurrences
- 1
- Severity
- warning
Sample message
like_escape() has been deprecated since WordPress version 4.0.0. Use wpdb::esc_like() instead.
WARNINGMaintainabilitymismatched plugin name1
- Category
- Maintainability
- Occurrences
- 1
- Severity
- warning
Sample message
Plugin name "Custom Menu Wizard Widget" is different from the name declared in plugin header "Custom Menu Wizard".
ERRORRepo Complianceoutdated tested upto header1
- Category
- Repo Compliance
- Occurrences
- 1
- Severity
- error
Sample message
Tested up to: 4.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.
WARNINGRepo Compliancereadme parser warnings too many tags1
- Category
- Repo Compliance
- Occurrences
- 1
- Severity
- warning
Sample message
One or more tags were ignored. Please limit your plugin to 5 tags.
WARNINGRepo Compliancereadme parser warnings trimmed section description1
- Category
- Repo Compliance
- Occurrences
- 1
- Severity
- warning
Sample message
The "Description" section is too long and was truncated. A maximum of 2500 characters is supported.
WARNINGRepo Compliancereadme parser warnings trimmed section installation1
- Category
- Repo Compliance
- Occurrences
- 1
- Severity
- warning
Sample message
The "Installation" section is too long and was truncated. A maximum of 2500 characters is supported.
Score History
First score snapshot
v3.3.1
38
Latest
- Findings
- 356
- Errors
- 326
- Warnings
- 30
- Check
- 2.0.0
| Scan | Score | Findings | Errors | Warnings | Plugin | Check |
|---|---|---|---|---|---|---|
| Latest | 38 | 356 | 326 | 30 | v3.3.1 | 2.0.0 |