我正在尝试加载特定于位置页面的wordpress菜单。有人将我的问题从Wordpress.stackexchange中删除,因为他们说这是特定于PHP的。
<?php if(is_page(array('12038', '11763', '12042')) {
$locationMenu = 'Jackson';
} elseif(is_page(array('12220', '12223', '12226', '592')) {
$locationMenu = 'Hattiesburg';
} else {
$locationMenu = 'Top Menu';
}
?>
<?php
wp_nav_menu( array(
'menu' => '$locationMenu',
'theme_location' => 'top',
'depth' => 3,
'container' => 'div',
'container_class' => 'collapse navbar-collapse',
'container_id' => 'navigation',
'menu_class' => 'nav navbar-nav',
'fallback_cb' => 'wp_bootstrap_navwalker::fallback',
'walker' => new wp_bootstrap_navwalker())
);
?>
答案 0 :(得分:0)
您传递给$locationMenu
的数组中的引号中有wp_nav_menu()
,这意味着您传递的是包含文本“$ locationMenu”的字符串。
删除引号,将传递变量的值。
答案 1 :(得分:0)
删除变量的单引号($ locationMenu)并尝试
<?php if(is_page(array('12038', '11763', '12042')) {
$locationMenu = 'Jackson';
} elseif(is_page(array('12220', '12223', '12226', '592')) {
$locationMenu = 'Hattiesburg';
} else {
$locationMenu = 'Top Menu';
}
?>
<?php
wp_nav_menu( array(
'menu' => $locationMenu,
'theme_location' => 'top',
'depth' => 3,
'container' => 'div',
'container_class' => 'collapse navbar-collapse',
'container_id' => 'navigation',
'menu_class' => 'nav navbar-nav',
'fallback_cb' => 'wp_bootstrap_navwalker::fallback',
'walker' => new wp_bootstrap_navwalker())
);
?>