Does wordpress support the capability to use images in the navigation menus instead of text links? I searched for this capability and found a site that shows how to include images in the menu through css editing:


If wordpress does not support the ability to easily add an image in as a linkable object in the nav menu, is there a plugin that can do this? I would like to have the ability to add and remove images to a navigation menu without having to edit css.

  • 1
    What's wrong with the CSS method? I don't think you'll find a plugin that makes it any more simple to be honest(i don't mind being wrong though).
    – t31os
    Feb 16, 2011 at 16:51

4 Answers 4


Could you explain your context a little?

I also think CSS is very fitting solutions to this. Partly because it makes sense for content/presentation balance, partly because custom menus are quite complex to figure out and I usually stay away form their internals.

I use CSS with set of icons at my blog, so I just add a custom class to menu item and CSS styles it accordingly. See Rarst.net.

  • Yes, I would like to make the image setting as configurable as possible by the blogger who doesn't necessarily know CSS.
    – user2019
    Feb 18, 2011 at 15:28

There are two ways.

1. Misuse the description

Go to wp-admin/nav-menus.php, open the options and enable the description field. Write the image paths into the description field and use a custom walker to modify the output of wp_nav_menu().

2. Use a custom post type

I have written a custom post type Navigation (hierarchical) similar to pages with a normal editor box, a title field and a meta box for URIs. The client writes his HTML and my code creates a navigation from these entries.

You can add any HTML, images, forms and videos. Really easy to use, but it requires a lot of code.


I know of:

maybe one of them will suite your needs.. take a look


I don't see the problem, aside from not enough information. You can just use an a-tag with a class, link it to whereever and then add a background-image via CSS. You can reuse the classes for identical images or use different classes for different images.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge that you have read and understand our privacy policy and code of conduct.