Несколько меню Wordpress, которые будут отображать только все страницы
Это мои первые вопросы, так что полегче со мной! Я разрабатываю веб-сайт, на котором логотип размещен в середине навигации. Я использую Bootstrap и Wordpress для достижения этого меню, но столкнулся со странной проблемой. Хотя у меня в обоих меню не установлен флажок "Автоматически добавлять новые страницы верхнего уровня", все страницы отображаются в обоих меню.
Левое меню должно содержать часто задаваемые вопросы, Контакты и Блог, а Правое меню должно содержать "Главная", "Магазин" и "О компании". Вместо этого в левом и правом меню отображаются все страницы.
Вот несколько скриншотов, чтобы дать вам лучшее представление.:
Ниже приведен мой header.php код для навигации:
<section id="navbar">
<div class="navbar-wrapper">
<div class="navbar navbar-default navbar-static" role="navigation">
<div class="container">
<div class="navbar-header">
<a class="navbar-toggle" data-toggle="collapse" data-target=".navbar-collapse">
<span class="sr-only">Toggle navigation</span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
</a>
</div><!-- navbar-header -->
<?php
wp_nav_menu( array(
'theme_location' => 'primary',
'container' => 'nav',
'container_class' => 'navbar-collapse collapse',
'menu_class' => 'nav navbar-nav navbar-left'
));
?>
<img src="<?php bloginfo('stylesheet_directory'); ?>/assets/img/SJ-circle.png" width="200px" height="200px" alt="Savvy Jack Wear" class="logo img-responsive center-block">
<?php
wp_nav_menu( array(
'theme_location' => 'secondary',
'container' => 'nav',
'container_class' => 'navbar-collapse collapse',
'menu_class' => 'nav navbar-nav navbar-right'
));
?>
</div><!-- container -->
</div><!-- navbar -->
</div><!-- navbar-wrapper -->
</section>
Как вы можете видеть, у меня есть левое и правое меню, и я поместил изображение между ними. Я также зарегистрировал свое дополнительное меню в functions.php файл.
register_nav_menus( array(
'menu-1' => esc_html__( 'Primary', 'savvyjack' ),
'menu-2' => esc_html__( 'Secondary', 'savvyjack'),
) );
Я не совсем понимаю, что здесь происходит. У меня никогда раньше не было этой проблемы, и у меня было несколько меню на других сайтах. Любая информация будет очень признательна!
1 answers
Ключи для массива, переданного в register_nav_menus()
, должны соответствовать аргументам 'theme_location'
в ваших вызовах wp_nav_menu()
. Поскольку они этого не делают, WordPress не может найти соответствующее меню и вместо этого отображает значение по умолчанию, состоящее из всех страниц верхнего уровня.
Либо измените ваши аргументы 'theme_location'
на 'menu-1'
и 'menu-2'
, либо измените ключи массива в вашем вызове register_nav_menus()
на 'primary'
и 'secondary'
.