How To Create A Dropdown Menu Of WordPress Categories Without Using Code

A long standing pain point I’ve had with WordPress is the inability to use the menu administration area to easily add a dropdown list of categories to my theme’s main menu. While the menu system provides the means to add categories to a menu, it doesn’t contain a way to easily create a dropdown list of categories. Thankfully, there is an easy work around that accomplishes the goal without using code. Thanks to Sami Keijonen who told me about this technique on the ThemeHybrid support forums.

Start by browsing to Appearance – Menus. Select the menu where you want the link to be displayed. Create a new Link menu item and use # as the URL with the link text of categories. Then click the Add to Menu button.

Creating The Placeholder

Creating The Placeholder

Select which categories you want to be displayed within the dropdown list. After you add the categories to the menu, make sure to drag and drop them so that they are a child link underneath the parent menu of categories. Look at the following screenshot for reference.

Arranging The Menu Items

Arranging The Menu Items

After you’ve arranged the category links, save the menu. Visit your front page and hover over the categories link to make sure the dropdown list works correctly. The parent menu item of categories acts as a placeholder which is the ingenious part of the tutorial.

Drop Down List Of Categories

Drop Down Menu In Use

By using this technique, I can modify which categories and what order they are displayed using the WordPress menu manager. I don’t have to worry about it disappearing via plugins or by switching themes. Thanks again to the always helpful, friendly, ThemeHybrid support forums for this tip.

20

20 responses to “How To Create A Dropdown Menu Of WordPress Categories Without Using Code”

  1. Wow. How cool, elegant, and practical is this tip? …It’s so easy, even Steve can do it. Thank you for sharing.

    (And, yes, the community and folks at ThemeHybrid are awesome! A mere $29 paid annually to access support while helping Justin Tadlock’s effort of free themes, plugins, and overall WP contributions at ThemeHybrid.com is a bargain!)

    Report

  2. Jagst3r15 says:

    Nice @ThemeHybrid shoutout :)

    Report

  3. Keith Davis says:

    I’ve got a feeling that once you’ve created the menu you can remove the # and the menu will still work but not show the top level “categories” menu item as being clickable when you hover over it.

    Just makes it look a little neater.

    Report

  4. You can target that menu item with this CSS in child theme style.css if you want.


    #menu-primary li.menu-item-15916 > a {
    cursor: default;
    }

    But I don’t mind the hand.

    Report

    • Thanks Sami, that did the trick.

      Report

      • Keith Davis says:

        Looks good Jeff

        The main point here is that we take the awesome WordPress menus for granted.

        In the old days of HTML / CSS sites you had to start with an unordered list, remove the symbol, float left….

        Point is that it took ages and now with WordPress we just drag them around – love the WordPress menus.

        Report

  5. On my Hybrid News theme, the menu works but the drop down menu pushes the page down. Any ideas?

    Report

  6. Soo the dropdown code is now included in core?

    Report

  7. Actually I’m kind of lost. Are you using referring to Pages as the menu you are wanting the link to be displayed in here? Or can I pick a page from the pages listed in the menu to create the dropdown menu from as I only have one menu list of pages? I need to create dropdown menus for the different categories.

    Hector Garcia

    Report

    • Nothing to do with pages. The main menu item is a link with no URL, The sub menu items are taken form the Categories box. If you don’t see it, enable it in Screen Options at the top of the page.

      Report

Newsletter

Subscribe Via Email

Enter your email address to subscribe to this blog and receive notifications of new posts by email.

%d bloggers like this: