Widget Context


Use Widget Context to show or hide widgets on certain sections of your site — front page, posts, pages, archives, search, etc. Use targeting by URLs (with wildcard support) for maximum flexibility.

Block Context

New: We’ve started working on the Block Context plugin which brings similar functionality to Gutenberg blocks.



Target by URL

The “Target by URL” is a very powerful feature with a lot of flexibility for targeting sections of your website based on the request URLs. It was inspired by a similar feature in the Drupal CMS.

  • Use relative URLs such as page/sub-page instead of absolute URLs https://example.com/page/sub-page.

  • Relative are URLs more flexible and make the logic portable between different domains and server environments.


Use the wildcard symbol * for matching dynamic parts of the URL. For example:

  • topic/widgets/* to match all posts in the widgets category, if your permalink structure is set to /topic/%category%/%postname%.

  • page-slug/* to match all child pages of the page-slug parent page.

  • Use a trailing ?* to capture URL with all query arguments such as utm_source, etc. For example, for every blog/post-slug also include blog/post-slug?*.


  • Widget Context settings at the bottom of every widget
  • Widget Context plugin settings


  • Search for Widget Context under «Plugins → Add New» in your WordPress dashboard.
  • Widget Context settings will appear automatically under each widget under «Appearance → Widgets».
  • Visit «Settings → Widget Context» to configure the available widget visibility contexts.


10 de septiembre de 2019
An another Awesome WordPress Plugin in my Basket.. wonderful.. Thanks for the great plugin.
5 de julio de 2019
I have used it for a while. I like it since it is more intuitive than all the other similar plugins.
Leer todas las 80 reseñas

Colaboradores y desarrolladores

«Widget Context» es un software de código abierto. Las siguientes personas han colaborado con este plugin.


«Widget Context» ha sido traducido a 4 idiomas locales. Gracias a los traductores por sus contribuciones.

Traduce «Widget Context» a tu idioma.

¿Interesado en el desarrollo?

Revisa el código , echa un vistazo al repositorio SVN o suscríbete al registro de desarrollo por RSS.

Registro de cambios

1.2.0 (August 20, 2019)

  • Set PHP 5.6 as the minimum supported version of PHP to match WordPress core.
  • Developer tooling update: introduce PHP autoloading, PHP unit tests with proper mocking, linting for JS, switch to Docker inside a Vagrant wrapper for local development environment and update to the latest version of WordPress coding standards (see #50).

1.1.1 (June 9, 2019)

  • Mark as tested with WordPress 5.2.
  • Add test coverage reporting and remove Debug Bar integration since it wasn’t complete. Refactor plugin structure to support dependency integration. See #47.
  • Added local development environment, see #48.

1.1.0 (June 13, 2018)

  • Fix URL matching for URLs with query strings.
  • Introduce unit tests for the URL context.

1.0.7 (June 5, 2018)

  • Mark as tested with WordPress 4.9.6.
  • Use the localisation service provided by WP.org.
  • Support for Composer.

1.0.6 (January 20, 2018)

  • Fix path to admin scripts and styles, props @tedgeving.
  • Mark as tested with WordPress 4.9.2.

1.0.5 (May 8, 2017)

  • Confirm the plugin works with the latest version of WordPress.
  • Add support for continuous testing via wp-dev-lib.

1.0.4 (May 6, 2016)

  • Confirm the plugin works with the latest version of WordPress.
  • Fix the PHP class constructor warning.
  • Move the widget context settings link.
  • Fix the initial context state in the customizer.


  • Include Russian translation (Thanks Flector!).
  • Add textdomain to the remaining strings.
  • Enable debugging if Debug Bar is available.


  • Load available custom post types and taxonomies right before visibility checks to avoid PHP warnings.
  • Run visibility checks only after the main post query has run. Fixes issues with WooCommerce.
  • Load our CSS and Javascript files only on widget and customizer admin pages.


  • Fix PHP warning in custom post type and taxonomy module.


  • Public release of the 1.0 refactoring.


  • Improved settings page.


  • Refactor code to allow custom widget context modules.


  • Fix PHP warning that occurred on PHP 5.2.x.


  • Improved SSL/HTTPS detection.
  • Fix: Ensure that is_active_sidebar() & is_dynamic_sidebar() don’t return true when there are no widgets displayed on a page.
  • Two new filters so that other plugins can override widget context display/visibility logic.


  • Revert back to changing callback function in $wp_registered_widgets for attaching widget context setting controls.
  • Fix the word count logic.


  • Major code rewrite and refactoring to improve performance and usability.
  • Fix bugs with URL targeting and empty lines in the «Target by URL» textarea.



  • Confirm that the plugin works with the latest version of WP.


  • Bug fix: check for active sidebars only after $paged has been set.


  • Don’t check for used sidebars on each widget load. Allow absolute URLs in the URL check.


  • Added distinction between is_front_page() and is_home(). Remove widgets from wp_get_sidebars_widgets() if they are not being displayed — this way you can check if a particular sidebar is empty.


  • Widget output callback couldn’t determine the widget_id.


  • Fixed widget control parameter transfer for widgets that don’t use the new widget api.


  • Initial release on Plugin repository.