=== Widget Options – Advanced Conditional Visibility for Gutenberg Blocks & Classic Widgets ===
Contributors: marketingfire
Tags: widget control, blocks, blocks visibility rules, gutenberg widgets, classic widgets
Requires at least: 5.6
Tested up to: 6.7
Requires PHP: 7.4
Stable tag: 4.1.3
License: GPLv2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
0ddcemmihs4a843ekhaoofzosrunf4bl

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

== Description ==

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

👉 Over 2,700,000+ downloads
👉 Average rating of ⭐⭐⭐⭐⭐ 4.9 stars
👉 Reduce plugin bloat. Widgets AND Gutenberg block control in one plugin

Widget Options expands Widget & Gutenberg block settings with feature-packed options so you can completely manage and control their visibility, appearance, and behavior. Show or hide content depending on user roles, devices, dates, URL…and more!

<strong> ✨ INSIDER TIP: ✨ Power users love the <a href="https://widget-options.com/">Pro version—unlock conditional logic, animation effects, sticky widgets, custom styling, and dozens of advanced controls</a> to make your blocks and widgets do exactly what you want. </strong>

[youtube https://www.youtube.com/watch?v=6ey1rDrlm_A]

<h3>Take Full Control over your WordPress Widgets & Gutenberg Blocks</h3>

Widget Options’ suite of controls makes it simple to achieve all of the following: 

<h4>✅ EASILY MANAGE WIDGET & GUTENBERG BLOCK VISIBILITY ON YOUR WORDPRESS SITE</h4>
Effortlessly manage visibility and access across different pages, posts, and categories with the Widget Options plugin.With intuitive search or checkbox selections, customize your site’s layout for categories, tags, custom post types, and more, ensuring your widgets and blocks appear exactly where you want them!

<h4>✅ SHOW OR HIDE WIDGETS OR BLOCKS ON MOBILE DEVICES, DESKTOP AND/OR TABLET</h4>
Enhance your website’s mobile experience with Widget Options. This tool allows you to streamline navigation by selectively displaying widgets or blocks on mobile devices. Keep your desktop and tablet interfaces unaffected while optimizing mobile views. The ‘Device Visibility’ feature in the widget settings clearly indicates which sidebar widgets are active on different devices, ensuring a flexible and user-friendly widget management.

<h4>✅ USER LOGIN STATE</h4>
Decide which widgets or Gutenberg blocks should be visible or hidden to either logged-in or non-logged-in users. This feature is helpful when you want certain website functions to be available only to registered users.

<h4>✅ CUSTOM WORDPRESS WIDGET ALIGNMENTS</h4>
Change your widget or block alignment to match the entire look of your website. Comes with <strong>center, left, right, and justified alignment<strong> options which can be customized for each device type.

<h4>✅ CUSTOM WIDGET ID & CLASSES</h4>
Create predefined classes on the plugin’s settings page and use them later for each widget. You can also add custom widget ID and additional classes for styling or javascript purposes.

<h4>✅ DISPLAY WIDGET LOGIC</h4>
Use <a href="https://codex.wordpress.org/Conditional_Tags">WordPress Conditional</a> tags to manage and restrict your widgets or Gutenberg blocks using display widget logic option if you’re geeky enough to use PHP conditions and in need of custom restrictions.

<h4>✅ HIDE WIDGET TITLE</h4>
Easily hide widget titles from the front-end display while retaining them on the backend dashboard for labeling.

<h4>✅ ENABLE / DISABLE WIDGET OPTIONS FEATURES</h4>
Tailor your experience effortlessly by selecting only the features you desire, and easily disable any unwanted widget options features through the intuitive settings page.

<h4>✅ WIDGET BLOCK EDITOR</h4>
Choose between the Classic Widget or Gutenberg Block Widget Editor with our latest feature. Experience the classic design with the old widget or embrace the power of blocks with the modern widget. Ideal for users who love the Gutenberg experience!

<h4>✅ STICKY/FIXED WORDPRESS WIDGETS (PRO)</h4>
This premium feature allows widgets to be always visible to users as they scroll up and down a webpage. Make your most important widgets sticky or fixed so that users can access them easily.

<h3>Widget Option’s Time-Saving Features</h3>

Widget plugins shouldn’t only give you control over your widgets. They must also save you a lot of time! Here are Widget Options’ features that can do that:

<h4>✅ LIVE WIDGET SEARCH FILTER</h4>
Admins save time and manage widgets more efficiently by enabling the live widget search box on your widget dashboard to locate widgets easier. No need to scroll the page.

<h4>✅ NO NEED TO DRAG WORDPRESS WIDGETS TO MOVE THEM</h4>
Increase productivity and improve widgets management by moving any widgets easily with just a click-and-select action. No more drag-and-drop! This is a convenient option especially when using small-screen devices such as tablets or mobile phones.

<h4>✅ IMPORT & EXPORT WIDGETS AND WIDGET AREA BACKUP</h4>
You can now import and export WordPress widgets easily and create backups of specific sidebar widget areas. Move widgets to another website with ease.

<h4>✅ VIEW YOUR CHANGES LIVE</h4>
This plugin is customizer-ready for easier modification. View your changes live before saving it!

<h3>Compatible with Most Major Page Builders</h3>

Some widget plugins may not work well with page builders. Widget Options supports Gutenberg, SiteOrigin, Elementor, and Beaver, helping you manage widget visibility and placement with ease.

<h4>🛠️ GUTENBERG BLOCK EDITOR BY WORDPRESS</h4>
Widget Options gives you full control over the visibility of Gutenberg Blocks, which are the building blocks for many themes and sites today. Simply select the content block you want to edit and you will see all of the Widget Options abilities on the right side settings panel. 

<h4>🛠️ PAGE BUILDER BY SITEORIGIN PLUGIN COMPATIBLE</h4>
With Widget Options on your website that is powered by SiteOrigin Page Builder, you can add more control to the widget panels. Manage visibility on specific device types, change alignments, hide widget panel title, add custom classes, and control visibility using display widget logic option!

<h4>🛠️ ELEMENTOR PAGE BUILDER READY</h4>
Extend Widget Options’ visibility restrictions on elementor widgets! You can now have the same widget management features available to your Elementor-powered websites.

<h4>🛠️ BEAVER BUILDER PLUGIN READY</h4>
Widget Options now comes with Beaver Builder plugin integration – integrated for a smooth website building workflow. You can fully manage each module in many ways you want!

<h4>🛠️ ADVANCED CUSTOM FIELDS (ACF) SUPPORT</h4>
Easily show or hide any widget using your ACF fields and conditions. You can create restrictions on your widgets with the following conditions:

* Equal To
* Not Equal To
* Contains
* Does Not Contain
* Is Empty
* Is Not Empty

The ACF function is also available for Elementor and Beaver Builder.

<h3>UPGRADE TO THE WIDGET OPTIONS EXTENDED PLUGIN</h3>

Turn Widget Options into an even more flexible widget area manager. Upgrade to <a href="http://widget-options.com/pricing/">Widget Options Extended</a> today!

<h4>✨ PREMIUM FEATURES ✨</h4>

* NEW: Unlock more features for Gutenberg widgets and blocks (pages, posts and other custom post types)
* NEW: Widget visibility for author’s contents and archive page
* Inherit page parent visibility
* NEW: Filter multiple pages by keyword-containing slug
* Target URLs and wildcard restrictions
* Clone widgets
* Custom widget links
* Advanced widget visibility control by user role
* Sticky / fixed WordPress widgets
* Custom widget columns display
* NEW: Widget visibility per days and date range (+ option to ignore year)
* Custom WordPress widget styling
* Widget cache
* Extended taxonomy and terms support
* Display sidebars and widgets using shortcodes
* Disable any WordPress widgets
* Permission options (control who can edit widget settings based on user role)

👉👉 Check out the full list of <a href="http://widget-options.com/features/">Widget Options Extended features here</a>.

<h3>ADD-ONS</h3>

Check out the <a href="https://widget-options.com/features/modal-pop-up-and-sliding-widget-options/">Sliding Widget Options</a> add-on! Transform any of your widgets into:

* A modal pop-up
* A slide in/toaster
* A chat box
* …any other animated sliding panel you can think of to increase your website’s user engagement!

<h3>CONTACT AND CREDITS</h3>

Widget Options for WordPress is regularly maintained and developed by the <a href="https://widget-options.com/">Widget Options Team</a>.

We work hard to keep Widget Options up-to-date and expanding, to make the most powerful widget and block manager on WordPress even more, well… powerful! 💪

If you would like to contribute, report issues or have suggestions, you can find the development version on <a href="https://github.com/WidgetOptions/widget-options">Github</a>.

You can also visit us at our <a href="https://www.youtube.com/channel/UCgKC5IAqoz4Q7nW0WzueQFw">Youtube Channel</a>.


== Installation ==

This section describes how to install the plugin and get it working.

e.g.

1. Upload the full directory into your wp-content/plugins directory
2. Activate the plugin at the plugin administration page
3. Go to Settings > Widget Options and add configure the features if you need to
4. When you drag or open any widgets you'll see the Widget Options below
5. I hope you'll love this plugin :)

== Frequently Asked Questions ==

= How do I begin working with this plugin? =
After Widget Options plugin activation you'll get welcome message with detailed video instructions to get started. Then go to <strong>Settings > Widget Options</strong> to enable/disable the features you want. Then go to <strong>Appearance > Widgets</strong> and start optimising your widgets!

= How do I add set of predefined custom CSS classes for widgets? =
Easy! Simply go to <strong>Settings > Widget Options</strong> and on <em>Classes & ID</em> module click Configure Settings then you can add your predefined CSS classes for your widgets.

= What widgets are supported? =
All of them! Yes, we haven't come across any single non-working widgets yet.

= How's the speed and loading time compare to other plugins? =
Widget Options is a featured pack fully lightweight plugin. Using Query Monitor plugin you'll find that the plugin doesn't load too much queries and doesn't affect your website's loading time. You can check more information how optimized Widget Options is <a href="https://widget-options.com/new-improved-widget-options-wordpress/">here</a>.

== Screenshots ==

1. Widgets Visibility Options in WP Customizer
2. Device Visibility Options
3. Block Widget Editor Enabled
4. Gutenberg Page and Post Block 
5. Display Widget Logic
6. Pagebuilder by SiteOrigin Plugin Widget Options
7. Widget Importer & Exporter Feature
8. Widgets Custom Alignment
9. Widget CSS ID & Classes
10. Advanced Custom Fields ( ACF ) Support
11. Pages Visibility Options
12. Widget Options Available Features
13. Beaver Builder Integration
14. Elementor Pagebuilder Integration

== Changelog ==

= 4.1.3 =

* Update: Adjusted the plugin description to follow the latest WordPress directory guidelines.
* Fix: Improved input validation and output handling to prevent possible security issues that could allow unwanted scripts to run on pages.

= 4.1.2 =

* Fix: Added validation for PHP code in Display Logic to block dangerous patterns when saving settings via Ajax

= 4.1.1 =

* Fix: Fixed vulnerability that could lead to Arbitrary Code Execution (ACE)

= 4.1.0 =

* Tweak: Improved conditional logic queue for better functionality
* Fix: Resolved preg_match(): Unknown modifier '/' error in includes/extras.php (line 599)
* Fix: Fixed vulnerability that could lead to Remote Code Execution (RCE)

= 4.0.9 =

* Tweak: Improved rendering when resizing the window, removing the need for auto-refresh
* Tweak: Enhanced column display for better rendering on small screens
* Fix: Resolved conflict with Flatsome UX Builder
* Fix: Fixed vulnerability issue related to the "proc_open" function
* Fix: Addressed conflict with Divi Theme Builder
* Fix: Restored missing Widget Options settings on the Posts editor sidebar
* Fix: Corrected issues related to time zone conflicts

= 4.0.8 =

* Tweak: Added a security filter to enhance logic validation
* Tweak: Made Widget Options compatible with additional Elementor widgets and blocks
* Fix: Fixed Warning: Undefined variable $post and Warning: Attempt to read property “post_parent” 
* Fix: Removed redundant code not required by the block editor
* Fix: Fixed a vulnerability issue reported by WordFence
* Fix: Resolved a compatibility conflict with the Qode Bridge theme

= 4.0.7 =

* Fix: Fixed the PHP Warning: Attempt to read property “post_type”
* Fix: Fixed Conflict with "The Events Calendar Shortcode & Block" Version 2.8.5 by Event Calendar Newsletter
* Fix: Fixed the Insert block button from post and paged editor
* Tweak: Enhanced UI to show page hierarchy in checkbox view
* Tweak: Enhanced CSS attributes to avoid conflict with WPZoom Inspiro Theme
* Tweak: Updated CSS to avoid UI conflict with Max Mega Menu plugin

= 4.0.6.1 =

* Improved: widgetopts_global_taxonomies attributes

= 4.0.6 =

* Fixed: Compatibility issue with The Event Calendar plugin
* Fixed: Conflict with jetpack slideshow and jetpack forms
* Fixed: Widget visibility per user roles when using shortcodes
* Fixed: Compatibility with eCommerce Product Catalog for WordPress plugin
* Fixed: PHP Warning: Attempt to read property "taxonomy" on null
* Fixed: PHP Warning: Attempt to read property "term_id" on null
* Added: missing cache buster in $ver argument for styles and scripts

= 4.0.5.1 =

* Fixed: Notification about the new features

= 4.0.5 =

* Added: Additional options for category visibility, can now select Archive and Single posts, Archive only, or Singe Posts only 
* Fixed: Content is updated and removed during page editing
* Fixed: response is not a valid json response
* Fixed: Ajax select2 search field
* Fixed: Compatibility issue with All In One SEO plugin
* Fixed: Compatibility issue with Woo Pick List plugin
* Fixed: Compatibility issue with Jetpack
* Fixed: Compatibility issue with Table of Content plugin
* Fixed: Compatibility issue with WP Recipe plugin
* Fixed: Devices Restriction, condition now working in mobile

= 4.0.4 =

* Fixed: All widgets showing in “customize” view.

= 4.0.3 =

* Fixed: WP Customizer saving issue.

= 4.0.2 =

* Improved: Widget Options for Kadence Block compatibility.
* Fixed: Visibility of Product Category Taxonomy for YITH AJAX Filter Preset.
* Fixed: Missing Add Block button.

= 4.0.1 =

* Improved: Added UI to enable and disable Widget Options in posts, pages, and other custom post types gutenberg blocks.
* Fixed: PHP Warning - Undefined array key "content"
* Fixed: WP_Block_Type_Registry::register error

= 4.0.0 =

* Widget Options is now a Gutenberg Block-Enabled plugin.
* Improved: Compatibility with WP 6.3 and 6.4
* Improved: User Interface
* Improved: Error Handling
* Improved: Loading speed on Classic Widget and Block Widget Editor
* Updated: Selection of post types and taxonomies (Toggle between search and checkbox)
* Fixed: PHP Warnings and Notices
* Fixed: Devices Restriction issue 
* Fixed: Cron warning issue
* Fixed: Ajax is not allowed for Select2 error
* Fixed: Widget Options' select2 CSS conflicts with other plugin's select2 CSS

= 3.9.6 =

* Fixed: Menu widgets showing on wrong pages
* Fixed: Compatibility with PHP8.1 and 8.2

= 3.9.5 =

* Fixed: Taxonomies selection
* Fixed: Devices hide/show logic
* Fixed: Variable handling

= 3.9.4 =

* Fixed: Taxonomies > Categories selection
* Fixed: post_id value for correct saving

= 3.9.3 =

* Updated: Ajax select2 directories
* Improved: Page visibility search (can now search empty taxonomies)

= 3.9.2 =

* Fixed: Pages Visibility select and unselect
* Updated: Removed the Widget Options CTA at the bottom of every widget container

= 3.9.1 =

* Fixed: Page Visibility taxonomies selection

= 3.9.0 =

* Improved: Compatibility PHP 8
* Improved: Compatibility with WP 6.2.2
* Improved: Widget Options settings UI
* Fixed: CSS conflict with SiteOrigin
* Updated: Page Visibility variable selection from dropdown to search

= 3.8.10 =

* Improved: Devices responsive breakpoints

= 3.8.9.1 =

* Added: Plugin description
* Updated: Title from Widget Options – Add Context To WordPress Widgets to Widget Options - The #1 WordPress Widget Control Plugin

= 3.8.9 =

* Fixed: PHP Notices connected to WPML variable

= 3.8.8 =

* Fixed: PHP Warning: Undefined variable

= 3.8.7 =

* Updated: Plugin redirection after activation
* Fixed: Array warnings & notices when Elementor page builder is activated
* Fixed: Display Issue with PolyLang

= 3.8.5 =

* Improved: Compatibility with WP 6.0
* Fixed: Display Issue with PeepSo Widgets
* Fixed: Display Issue with WPML added languages

= 3.8.4 =

* Fixed: PHP Notice: Undefined variable

= 3.8.3 =

* Fixed: PHP Warning: Undefined variable

= 3.8.2 =

* Fixed: Versioning issue

= 3.8.1 =

* Fixed: Missing plugin files

= 3.8 =

* Added: More option to upgrade to PRO version.

= 3.7.14 =

* Fixed: PHP Recoverable fatal error – when switching AMP mode

= 3.7.13 =

* Fixed: Versioning issue

= 3.7.12 =

* Fixed: jQuery UI styles

= 3.7.11 =
* Fixed: Visibility issue for WooCommerce taxonomies

= 3.7.10 =
* Fixed: CSS issue with other plugins
* Fixed: Missing icons on Elementor page builder

= 3.7.9 =
* Added: Option to revert Classic Widgets Screen
* Fixed: Admin notices

= 3.7.8 =
* Updated: Dependency security vulnerability
* Fixed: Multisite warning issues
* Fixed: Custom post type list in display condition

= 3.7.7 =
* Fixed: Deprecated jQuery functions
* Fixed: Logic option issue
* Fixed: Mobile restrictions issues
* Updated: Plugin descriptions
* Updated: Admin options page details
* Added: affiliate URL support via hooks

= 3.7.6 =
* Fixed: blank page issue in admin widget page

= 3.7.5 =
* Improved: Compatible with Latest WordPress.

= 3.7.4 =
* Updated: Readme and plugin info.

= 3.7.3 =
* Fixed: Import and export invalid file error
* Fixed: Several instances of widget lock up issue

= 3.7.2 =
* Fixed: issue with latest ACF version

= 3.7.1 =
* Fixed: PHP notices

= 3.7 =
* Added: <strong>Advanced Custom Fields ( ACF )</strong> support
* Integrated: ACF conditions on Elementor and Beaver Builder integration too
* Added: <strong>User Logged-in State</strong> feature to easily restrict widget on loggedin or loggedout users
* Added: <strong>User Logged-in State</strong> to Elementor integration as well
* Added: Show rating notice on widget dashboard and Widget Options settings page only

= 3.6 =
* Added <strong>Beaver Builder Plugin Integration</strong>.

= 3.5 =
* Added: <strong>Widget Importer & Exporter Feature</strong>
* Added: <strong>Specific Widget Area Backup</strong> Downloader
* Added: Option to remove all widgets assigned on widget area
* Added: Target URLs and Wildcard Restrictions module upgrade on settings page
* Improved: Pages list and indent child pages
* Improved: Compatibility for the upcoming Beaver Builder integration
* Fixed: Issues with Elementor and OceanWP integration

= 3.4 =
* Added: <strong>Move WordPress Widgets</strong> Feature
* Added: <strong>Elementor Pagebuilder Support</strong> Beta Feature
* Added: Option to disable automatic addition of .widget class
* Fixed: Support for is_active_sidebar
* Updated: Subscription sidebar and add free e-book download
* Improved: Loading speed on admin widgets dashboard

= 3.3.2 =
* Improved: Use better Global pages items to prevent issues with site with lots of pages
* Fixed: Multisite Issue when Network Activated
* Added: 'widget' class to fix issue with Elegant Themes that using 'et_widget' as base class
* Added: Support for <a href="https://widget-options.com/features/modal-pop-up-and-sliding-widget-options/" target="_blank">Sliding Widgets</a> add-on

= 3.3.1 =
* Fixed: PHP 7.0 Global variables issue

= 3.3 =
* Added: Widget Live Search option on widgets.php admin dashboard

= 3.2.1 =
* Fixed: Categories not updating when new one added
* Added: Review/Rating admin notice from version 3.1

= 3.2 =
* Improved: Plugin Loading and Performance
* Fixed: issues reported on github

= 3.1 =
* Added: Pagebuilder by SiteOrigin Plugin Widgets Compatibility
* Fixed: JQuery UI css conflicts
* Improved: Plugin performance

= 3.0.2 =
* Fixed: Warning Message when Activated
* Fixed: DIVI jQuery UI styling issues

= 3.0.1 =
* Fixed: Warning messages after update last version plugin

= 3.0 =
* Improved: settings page and add modular options inspired by iThemes Security Plugin
* Added: User selection for features
* Added: Hide Widget Title option
* Revamped: Saving options

= 2.0 =
* Added: Widget Display Logic Options
* Improved: Tab UI for better navigation

= 1.3 =
* Added: Category Widgets Visibility Selection to associated posts
* Updated: Pro tabs with additional features added on Widget Options Extended 2.0

= 1.2 =
* Added: Widget CSS ID and Classes tab options. <a href="https://widget-options.com/blog/add-wordpress-widget-css-classes-id/">Learn more about this update</a>
* Added: Blog Page Visibility for Widgets

= 1.1.1 =
* Improved: Transient time to 5 minutes

= 1.1 =
* Improved: Set Transient for queries to reduce loading time

= 1.0 =
* Initial Plugin release

== Upgrade Notice ==

= 1.0 =

* Initial Plugin release

== Contact and Credits ==

Widget Options for WordPress is maintained and developed by <a href="https://widget-options.com/">Widget Options Team</a>.
