Начиная с 3 версии, появилась такая замечательная вещь как произвольное меню, изучайте — http://codex.wordpress.org/WordPress_Menu_User_Guide
Как говорит один мой хороший знакомый, в программировании, верстке и т.д есть как минимум три способа решить проблему. Не спорю против вашего варианта, я его еще не пробовал. Я предлагаю свой способ, например:
<ul>
<?php wp_list_categories('exclude=23,22&title_li='); ?>
<?php wp_list_pages('exclude=12&title_li='); ?>
</ul>
Вот срастил список страниц и список рубрик. Вывел все страницы и рубрикии в строчку, а потом с помощью ‘exclude=’ исключил те страницы и рубрики, отображение которых мне не нужно. Здесь номер — это ID рубрики или страницы, если страниц или рубрик нужно несколько исключить, то прописываем номера ID через запятую. Данный способ у меня пока работает замечательно. Можем даже обсудить данный вариант решения задачи, возможно тут найдем изъяны. Так что приглашаю всех к конструктивному обсуждению.
Если вас не смущает 2 вызова функций, которые отрицательно скажутся на производительности, невозможность задать порядок категорий (хотя есть плагин) да и вообще нормально им управлять, а так-же необходимость для управления меню править код сайта — то ваше решение вполне приемлимо.
Ну да, есть некоторые неудобства.