Я хотел бы заменить определенное меню на определенной странице, но не могу заставить его работать.
Вот что у меня есть в моих функциях. Php:
add_filter('wp_nav_menu_args', 'show_correct_main_menu');
function show_correct_main_menu($args) {
if ( is_page(9424) ) {
if ( $args['menu'] = '2' ) {
$args['menu'] = '40';
}
}
return $args;
}
Iпонятия не имею, почему это не работает.Для этого он заменяет ВСЕ меню на текущей странице - главное меню, меню в нижнем колонтитуле и т. Д. Я бы хотел заменить только меню с идентификатором 2
.
.Есть ли способ указать, какое меню (по идентификатору) заменить?
В конечном итоге я хотел бы заменить несколько меню на этой странице, что-то вроде этого:
add_filter('wp_nav_menu_args', 'show_correct_main_menu');
function show_correct_main_menu($args) {
if ( is_page(9424) ) {
if ( $args['menu'] = '2' ) {
$args['menu'] = '40';
} elseif ( $args['menu'] = '5' ) {
$args['menu'] = '31';
}
}
return $args;
}
Если я нацеливаюсь на главное меню, используя $args['theme_location']
, оно, кажется, работает, но я бы особенно хотел использовать идентификаторы меню.