Произвольные меню

Новая функция wp_nav_menu, появившаяся в версии WordPress 3.0, отвечает за создание и добавление произвольных меню к теме. Благодаря ей, пользователь получил возможность настраивать меню в соответствии с собственными требованиями или предпочтениями. Последняя версия фреймворка Thematic вбирает в себя данную функциональность. Стоит отметить, что добавление произвольных меню не входит в Thematic по умолчанию, поскольку оно могло бы повредить более старые дочерние темы, созданные на базе традиционного меню (представляющего собой обычный список страниц). Для того чтобы подключить произвольные меню в дочерней теме фреймворка Thematic, необходимо добавить фильтр к хуку thematic_menu_type и вернуть ‘wp_nav_menu’:

function wicked_change_menu_type() {
return 'wp_nav_menu';
}
add_filter('thematic_menu_type', 'wicked_change_menu_type');

Указанный код позволяет создать произвольное меню в панели администратора и затем добавить его к теме.

Такой подход предлагает пользователям мощные средства по созданию и настройке собственного навигационного меню для сайта. Пользователи могут выбирать необходимые им пункты, которые будут отображены в меню: страницы, рубрики или ссылки. Указанная возможность должна быть обязательно реализована в собственной теме, тем более что для этого необходимо добавить всего лишь пару строчек кода.

Выполним регистрацию вторичного меню и добавим его к нашему шаблону. Регистрация меню проводится довольно просто — достаточно вызвать функцию register_nav_menus и передать ей массив, содержащий ID меню и его имя:

register_nav_menus(array('secondary' =< __('Secondary Menu'))); 

Теперь, когда вы перейдете в панель администратора и откроете пункт «Внешний вид — Меню», то увидите дополнительный выпадающий список для вторичного меню. Однако, поскольку мы не добавили его ни к одному из шаблонов, оно не будет отображено в теме. Чтобы вывести его на экран, необходимо вызвать wp_nav_menu в каком-либо из шаблонов. Поместим дополнительное меню над основным (primary) сайдбаром:

function wicked_secondary_menu() {
wp_nav_menu(array('theme_location' =< 'secondary','fallback_cb'=< ''));
}
add_action('thematic_abovemainasides', 'wicked_secondary_menu');

Теперь мы можем добавить к дополнительному меню любые ссылки, которые затем появятся над основным сайдбаром.

Блог про WordPress
Комментарии: 2
  1. Сергей Мак.

    Здравствуйте. Очень понравилось оформление темы (особенно фото на самом верху).

    А второе — спасибо за обьяснение по теме добавление произвольных полей.

  2. Дмитрий (автор)

    Здравствуйте, Сергей. Оформление темы я менял раз пять или шесть, никак не мог найти такой вариант, чтобы устраивал меня на все сто процентов.

    Очень приятно слышать добрые отзывы — это значит, что не зря работал и старался. Буду продолжать в том же духе.

Добавить комментарий

Получать новые комментарии по электронной почте.