Сегодня будем создавать горизонтальное верхнее меню в стандартной теме wordpress – Twenty Fifteen.
Скачать исходники для статьи можно ниже
В теме Twenty Fifteen уже есть 2 области меню: “Основное меню” и “Меню социальных ссылок” – однако, располагаются они в боковой колонке (сайдбаре).
В данной же статье мы будем создавать горизонтальное меню в верхней части сайта, вот 3 этапа, которые необходимо выполнить:
1. Регистрируем новое меню в файле functions.php.
2. Размещаем HTML код меню в файле header.php.
3. Прописываем CSS стили для создаваемого нами верхнего горизонтального меню в файле стилей – style.css.
В результате у нас получиться следующее меню:
Приступим же к созданию верхнего горизонтального меню в теме Twenty Fifteen.
1. Регистрируем новое меню в файле functions.php.
Заходим в админку wordpress, в левом меню выбираем пункт “Внешний вид” и его подпункт “Редактор”, справа в списке шаблонов выбираем файл functions.php, переходим в конец его кода и вставляем:
function top_header_menu() {
register_nav_menu('top-header-menu',__( 'Верхнее меню' ));
}
add_action( 'init', 'top_header_menu' );
Теперь если вы перейдете в пункт “Внешний вид” и его подпункт “Меню”, а после создадите новое меню, то wordpress предложит вам указать его расположение уже из 3 областей темы:
2. Размещаем HTML код меню в файле header.php.
Заходим в админку wordpress, в левом меню выбираем пункт “Внешний вид” и его подпункт “Редактор”, справа в списке шаблонов выбираем файл header.php ищем в нем следующую строчку:
<div id="sidebar" class="sidebar">
и перед ней вставляем следующий код:
<div id="navbar" class="top-navbar"> <nav id="site-navigation" class="navigation top-navigation" role="navigation"> <?php wp_nav_menu( array( 'theme_location' => 'top-header-menu', 'menu_class' => 'top-nav-menu' ) ); ?> </nav><!-- #site-navigation --> </div><!-- #navbar -->
3. Прописываем CSS стили для создаваемого нами верхнего горизонтального меню в файле стилей – style.css.
Заходим в админку wordpress, в левом меню выбираем пункт “Внешний вид” и его подпункт “Редактор”, справа в списке шаблонов выбираем файл style.css и в конце его кода вставляем:
.top-navigation {
clear: both;
margin: 0 auto;
max-width: 1080px;
min-height: 45px;
position: relative;
float:right;
}
ul.top-nav-menu,
div.top-nav-menu > ul {
margin: 0;
padding: 0 40px 0 0;
}
.top-nav-menu li {
display: inline-block;
position: relative;
}
.top-nav-menu li a {
color: #141412;
display: block;
font-size: 15px;
line-height: 1;
padding: 15px 20px;
text-decoration: none;
}
.top-nav-menu li:hover > a,
.top-nav-menu li a:hover,
.top-nav-menu li:focus > a,
.top-nav-menu li a:focus {
background-color: rgba(154,154,154,0.8);
color: #fff;
}
.top-nav-menu .sub-menu,
.top-nav-menu .children {
background-color: rgba(154,154,154,0.8);
border: 2px solid #f7f5e7;
border-top: 0;
padding: 0;
position: absolute;
left: -2px;
z-index: 99999;
height: 1px;
width: 1px;
overflow: hidden;
clip: rect(1px, 1px, 1px, 1px);
}
.top-nav-menu .sub-menu ul,
.top-nav-menu .children ul {
border-left: 0;
left: 100%;
top: 0;
}
ul.top-nav-menu ul a,
.top-nav-menu ul ul a {
color: #fff;
margin: 0;
width: 200px;
}
ul.top-nav-menu ul a:hover,
.top-nav-menu ul ul a:hover,
ul.top-nav-menu ul a:focus,
.top-nav-menu ul ul a:focus {
background-color: rgba(154,154,154,0.8);
}
ul.top-nav-menu li:hover > ul,
.top-nav-menu ul li:hover > ul,
ul.top-nav-menu .focus > ul,
.top-nav-menu .focus > ul {
clip: inherit;
overflow: inherit;
height: inherit;
width: inherit;
}
.top-nav-menu .current_page_item > a,
.top-nav-menu .current_page_ancestor > a,
.top-nav-menu .current-menu-item > a,
.top-nav-menu .current-menu-ancestor > a {
color: #111111;
font-style: italic;
}
/* Navbar */
.top-navbar {
background-color: rgba(254,254,254,0.8);
border-color:rgba(200,200,200,1);
border-bottom-style:solid;
border-bottom-width:1px;
margin: 0 auto;
max-width: 1400px;
width: 100%;
position:fixed !important;
z-index:1;
}
PS: Можно создать дочернюю тему и производить все вышеуказанные действия по созданию горизонтального меню в ней.
О том как создать дочернюю тему в wordpress читайте здесь – “codex.wordpress.org/Дочерние_темы”


Огромное спасибо за ваш труд желаю вам успехов
А как поменять цвет появившегося меню? Сделать его, например, синим?