Sign up ×
WordPress Development Stack Exchange is a question and answer site for WordPress developers and administrators. It's 100% free, no registration required.

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.

share|improve this question
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 '11 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

share|improve this answer
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 '11 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.

share|improve this answer

I know of:

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

share|improve this answer

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.

share|improve this answer

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.