Context Manager
by Phill Brown on WordPress.org
Make your site react to users' context by changing your theme's CSS and JavaScript files, navigation menus, sidebars and the HTML body tag.

An example setup for a products section in a online shop
Context Manager makes your site behave differently depending on the current user’s context. Using the simple point-and-click admin pages, there are four different ways your site can react:
- Include and exclude CSS and JavaScript files
- Changing the behaviour of menu items
- Hiding widgets in sidebars
- Adding extra classes to the
tag.
The plugin supersedes Menu Rules
Example usage
A website has e-commerce shopping functionality driven by a custom post type called ‘products’. There’s an archive page called ‘shop’ that lists products and is linked to in the main navigation menu.
A user visits ‘shop’ and the menu item becomes ‘active’, but when they click through to an individual product, the menu item loses its state. The user becomes lost.
- Install the Context Manager plugin
- Add a new context rule
- Give it a meaningful name in the title field. This is just for administration purposes
- In the conditions field enter
is_singular( 'product' ) - Choose Emulate current page as a child but do not create a menu item. as the menu rule
- Find your products page in the menu dropdown
On the product page, there are irrelevant widgets that distract the user from making a purchase.
- Hide irrelevant widgets under the widgets reaction
The whole shop section requires its own colour scheme, but there’s no common class that ties all the pages together.
- Enter
shop-sectionclass name in the body class reaction. Or alternatively, register another stylesheet usingwp_register_style()in you theme’sfunctions.php. - Create
Remember to click publish when you’re ready to save.
Have a look at screenshots to see the above setup in action.
Support
If you’re stuck, ask me for help on Twitter.