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

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

My navigation bar of my wordpress theme is set up to wp_list_pages. I'd like to display text underneath those page links.



"Home Sweet Home"

Do I need a widget to accomplish this or is it relatively simple to implement?

share|improve this question
up vote 1 down vote accepted

Yes, but you need to use a custom walker. You must modify the function that traverse the page and output the HTML. Extend the basic wordpress class and implement your function.

See this stackechange post for a code example.

Note: I suggest you to use wp_nav_menu (custom menus) instead of wp_list_page and use the item description as your sub_menu item description.

share|improve this answer
I'm not as familiar with the WP Admin panel as I should be. Where can I change the links wp_nav_menu displays? – pope Jan 20 '12 at 23:57
Using Appereance -> Menus, you can chose via drag and drop the pages. The link is the permalink of the page. If you want custom links, use the box custom links. To enter a description , enable the field Description in Screen Options – keatch Jan 21 '12 at 0:01
Thanks, that was easy! Walkers however are not. Is there a tutorial out there you recommend? I've already google'd a few but I want to make sure I'm getting correct, up to date information. – pope Jan 21 '12 at 0:30
See this answer for an example. I’ll keep it up to date if WordPress changes anything related. – toscho Jan 21 '12 at 2:39

Your Answer


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

Not the answer you're looking for? Browse other questions tagged or ask your own question.