Widget Options – Advanced Conditional Visibility for Gutenberg Blocks & Classic Widgets

Widget Options gives you super powers to control your site’s sidebar widgets and all Gutenberg blocks on pages, posts & other custom post types.

v4.2.5Marketing FireUpdated Added 100k+ installs98% rating67% support resolved
31
Score
837
Errors
295
Warnings
+0
Change

Category Scores

Security0
Repo91
Performance100
Maintainability38

Issues to Review

Prioritized issue groups from the latest Plugin Check scan

1,132 findings

Security

901

8 issue groups

Maintainability

189

13 issue groups

I18n

35

4 issue groups

ERRORSecurityUnsafe Printing FunctionAll output should be run through an escaping function (like esc_html_e() or esc_attr_e()), found '_e'.542
Category
Security
Occurrences
542
Severity
error

Sample message

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

ERRORSecurityOutput Not EscapedAll output should be run through an escaping function (see the Security sections in the WordPress Developer Handbooks), found '$_selected_page'.247
Category
Security
Occurrences
247
Severity
error

Sample message

All output should be run through an escaping function (see the Security sections in the WordPress Developer Handbooks), found '$_selected_page'.

WARNINGMaintainabilityNon Prefixed Hookname FoundHook names invoked by a theme/plugin should start with the theme/plugin prefix. Found: "'widget_options_visibility_single_block_' . $tax_value".100
Category
Maintainability
Occurrences
100
Severity
warning

Sample message

Hook names invoked by a theme/plugin should start with the theme/plugin prefix. Found: "'widget_options_visibility_single_block_' . $tax_value".

WARNINGSecurityMissing Unslash$_GET['action'] not unslashed before sanitization. Use wp_unslash() or similar35
Category
Security
Occurrences
35
Severity
warning

Sample message

$_GET['action'] not unslashed before sanitization. Use wp_unslash() or similar

WARNINGMaintainabilityDirect QueryUse of a direct database call is discouraged.26
Category
Maintainability
Occurrences
26
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().26
Category
Maintainability
Occurrences
26
Severity
warning

Sample message

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

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

Sample message

Processing form data without nonce verification.

WARNINGSecurityMissingProcessing form data without nonce verification.20
Category
Security
Occurrences
20
Severity
warning

Sample message

Processing form data without nonce verification.

WARNINGSecurityInput Not SanitizedDetected usage of a non-sanitized input variable: $_FILES['widgeopts_file']19
Category
Security
Occurrences
19
Severity
warning

Sample message

Detected usage of a non-sanitized input variable: $_FILES['widgeopts_file']

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

Sample message

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

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.

WARNINGSecurityInput Not Validated13
Category
Security
Occurrences
13
Severity
warning

Sample message

Detected usage of a possibly undefined superglobal array index: $_FILES['widgeopts_file']. Check that the array index exists before using it.

ERRORI18nMissing Arg Domain7
Category
I18n
Occurrences
7
Severity
error

Sample message

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

ERRORI18nNon Singular String Literal Text7
Category
I18n
Occurrences
7
Severity
error

Sample message

The $text parameter must be a single text string literal. Found: $aname

ERRORI18nUnordered Placeholders Text6
Category
I18n
Occurrences
6
Severity
error

Sample message

Multiple placeholders in translatable strings should be ordered. Expected "%1$d, %2$d", but got "%d, %d" in 'Successfully migrated display logic to snippets. Created %d snippets and updated %d widgets.'.

WARNINGMaintainabilityNon Prefixed Class Found4
Category
Maintainability
Occurrences
4
Severity
warning

Sample message

Classes declared by a theme/plugin should start with the theme/plugin prefix. Found: "WIDGETOPS_Welcome".

WARNINGMaintainabilityprevent path disclosure error reporting4
Category
Maintainability
Occurrences
4
Severity
warning

Sample message

error_reporting() can lead to full path disclosure.

WARNINGMaintainabilityNon Prefixed Function Found3
Category
Maintainability
Occurrences
3
Severity
warning

Sample message

Functions declared in the global namespace by a theme/plugin should start with the theme/plugin prefix. Found: "blockopts_filter_before_display".

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;

ERRORMaintainabilitywp function not compatible with requires wp3
Category
Maintainability
Occurrences
3
Severity
error

Sample message

Function "wp_use_widgets_block_editor()" requires WordPress 5.8.0, but your plugin minimum supported version is WordPress 5.6.0.

ERRORMaintainabilitydate date2
Category
Maintainability
Occurrences
2
Severity
error

Sample message

date() is affected by runtime timezone changes which can cause date/time to be incorrectly displayed. Use gmdate() instead.

WARNINGSecuritywp redirect wp redirect2
Category
Security
Occurrences
2
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.

ERRORMaintainabilityFound1
Category
Maintainability
Occurrences
1
Severity
error

Sample message

The use of function eval() is forbidden

ERRORMaintainabilityparse url parse url1
Category
Maintainability
Occurrences
1
Severity
error

Sample message

parse_url() is discouraged because of inconsistency in the output across PHP versions; use wp_parse_url() instead.

ERRORMaintainabilitystrip tags strip tags1
Category
Maintainability
Occurrences
1
Severity
error

Sample message

strip_tags() is discouraged. Use the more comprehensive wp_strip_all_tags() instead.

Score History

First score snapshot

v4.2.5

31

Latest

Findings
1,132
Errors
837
Warnings
295
Check
2.0.0

Related Plugins