Я использую API меню и хочу переключиться на другое меню, но по какой-то причине оно удерживает первое.
Вот мой код
в functions.php
add_action( 'init', 'register_my_menus',10 );
function register_my_menus() {
register_nav_menu('main-navigation', 'Main Navigation');
}
Вот код в моем файле темы (header.php)
<?php
$args = array(
'menu' => 'main-navigation',
'container_id' => 'navigation',
'fallback_cb' => 'wp_page_menu'
);
wp_nav_menu($args); ?>
@Mild Fuzz : Можете ли вы опубликовать код из своей темы, который вызывает
wp_nav_menu
вывод на веб-страницу, чтобы мы могли увидеть, что он делает?весь файл header.php?
никакого эффекта, очень странно
Попробуй это сейчас. Rarst случайно поставил дефис вместо нижнего подчеркивания для
'theme_location'
.Ой, извини. Ненавижу такие опечатки, их ад замечать и исправлять. 🙁
фикс разобрался. Превосходно
_Menus несколько сбивает с толку. Попробуй это:
theme_location
пытается отобразить меню, прикрепленное к этому местоположению.menu
пытается отобразить меню по слагу/идентификатору (не расположение меню, а фактическое меню, которое вы создаете в админке).Таким образом, вы смешиваете местоположение с слагом меню, он запутывается и просто предлагает первое меню, которое может.
См.
wp_nav_menu()
документацию для полного описания логики, стоящей за этим.