How to Show or Hide Widgets on Specific Pages

If you’re new to WordPress, this will take your site to the next level. You’ll love the new flexibility and control you have for customizing your site.

In particular, you’ll learn how to:

  • show a widget on your homepage only
  • show a widget on one category
  • hide a widget on your homepage
  • show a widget on one page
  • show a widget on one post

The Widget Options Plugin

To control your widget display, I recommend using the awesome Widget Options plugin.

Widget Options

Widget Options makes it very easy to show or hide any widget on any page. It provides a robust set of settings but is still simple to learn and use.

In this tutorial, you’ll learn how to use this plugin to control precisely where your widgets show up on your site.

Let’s start with displaying widgets on the homepage.

How to show a widget on just the homepage

Let’s say you have a Text widget with a welcome message for your visitors. You only want to display it on the homepage.

To do this, you would first add a Text widget to the widget area. With Widget Options installed, you’ll see the following options added to the widget:

Widget Options Example

To show the widget on the homepage only, switch the Hide/Show option to “Show on checked pages,” check the Home/Front option, and save the widget.

Widget Homepage Only

The widget will now only show on the homepage, whether you’re displaying a static page or your posts.

How to show a widget on a category only

Showing a widget on one category is just as easy.

Add your widget, and once again, set the first option to Show on checked pages. This time, click on the Taxonomies tab and then check the box of the category where you want to display the widget.

Widget Show Category

Lastly, save the widget and its display settings will be updated.

How to hide a widget on the homepage

Instead of showing a widget on the homepage only, you can reverse this and hide a widget on the homepage only.

To hide a widget on the homepage, the options are the same as showing it on the homepage, but this time you switch the Hide/Show option to “Hide on checked pages.”

Widget Hide Homepage

Now the widget will show on every page except for the front page.

How to show a widget on a specific page

By now, you should have a pretty good idea of how this works.

If you want to show a widget on one page only, you can switch to the Post Types tab, and there you’ll find all of the pages published on your site.

Widget Show Page


We’ve only scratched the surface.

With the Widget Options plugin, you can hide/show widgets based on the visitor’s device, remove the title for any widget, and add new classes for custom CSS styling. There’s an unlimited variety of ways you can use it to customize the content shown on your site.

Have you tried this plugin? Let us know in the comments how you used it to show and hide widgets on your WordPress site.

Keep learning with these articles

Share this article with a friend

Take our 7-day Email Course for FREE

You'll learn how to make your WordPress site look better, load faster, and make more money.

Invalid email address
You'll get one email a day for the next 7 days


  1. Ben Sibley Ben Sibley

    Cool plugin Jeff, thanks for sharing!

  2. Craig Craig

    What if the post has more than one category and I want the widget to show up only on the primary category?

    Example: I have 3 categories and 9 posts. Each post has 2 categories. In this case, setting the visibility to one category will show two widgets for each post because they are in two categories. How do I make the widget show up only on the primary category?

    • Ben Sibley Ben Sibley

      Hi Craig,

      There are two ways you could do this. First, you could show each widget based on a list of post IDs. This would work well, but would require you to update the IDs list when you publish new posts. The second option is to add a new set of 3 categories used specifically for the widgets. If there is no overlap on these categories, then you can use them to categorize the posts based on which widget should be shown.

  3. Jeffrey Jeffrey


    No problem 🙂 Just want to update the link. It’s not hosted here with the free version the repository :

    I hope this will be very helpful. Thanks!

  4. John John

    Is it free or paid plugin? If paid whats the cost of plugin?

    • Ben Sibley Ben Sibley

      Hey John,

      Each of the plugins listed are free to use on your site.

  5. Jame Jame

    I see a lot of interesting articles on your website. especially this article related to my problem You have to spend a lot of time writing many articles, thank you for your articles, today learn so much from this post.

  6. John John

    Hey Ben,
    Thanks for replying. Really appreciate that

    • Ben Sibley Ben Sibley

      Sure thing, thanks for stopping by!

  7. Hunk Riyaz Hunk Riyaz

    I love the Display Widget. I think that is the best and easy to use.

  8. Uengager Uengager

    This is a very timely article Ben.
    We have a product where each WP page needs a unique JS in the footer area. This article may be the answer.

  9. Kevin Kevin

    Hi – I’m using the free version. I need to differentially display widgets on posts. In the plugin, my individual pages and categories are listed as shown in your screenshots but my posts are not.

    How would I display a widget on an individual post?

    • Ben Sibley Ben Sibley

      Since websites often have dozens or hundreds of posts, they don’t list them all but you can still enter in the ID of a post. If you’re not sure how to find out the ID of a post you can check the tutorial here:

Comments are closed.

Disclosure: This post may contain affiliate links. Purchasing a product through one of these links generates a commission for us at no additional expense to you.