我正在尝试为Wordpress主题添加其他菜单。
我在theme-functions.pnp中找到了原始菜单的定义。
/*-----------------------------------------------------------------------------------*/
/* Menu Navigator */
/*-----------------------------------------------------------------------------------*/
if ( function_exists('register_nav_menus') ) {
add_theme_support( 'nav-menus' );
register_nav_menus( array(
'primary' => __( 'Main Menu','colabsthemes' )
));
}
if (!function_exists('colabs_nav_fallback')) {
function colabs_nav_fallback($div_id){
if (is_array($div_id)){ $div_id = $div_id['theme_location']; }
if ( $div_id == 'primary' ){
wp_page_menu('depth=0&title_li=');
}
}}
function replace_menu_div( $newel ) {
$html4nav = array();
$html4nav[0] = '/<div class="menu">/';
$html4nav[1] = '/<\/div>/';
$html5nav = array();
$html5nav[0] = '<nav class="top-nav">';
$html5nav[1] = '</nav>';
ksort($html4nav);
ksort($html5nav);
return preg_replace($html4nav, $html5nav, $newel, 1);
}
add_filter('wp_page_menu','replace_menu_div');
所以现在我试图插入第二个菜单。直接在第一个菜单的名称下面,我已添加
‘wedding-menu’ => __( 'Wedding Menu' )
当我进入菜单页面时,&#34;婚礼菜单&#34;显示为菜单位置,我将其选为我想要的菜单。
我在页面模板中调用了菜单(我根据如何在标题中调用主菜单):
<?php wp_nav_menu( array( 'theme_location' => ‘wedding-menu’, 'container_class' => 'top-nav', 'container' => 'nav', 'menu_class' => '', 'fallback_cb'=>'colabs_nav_fallback') );?><!-- .topnav -->
当我加载网页时,菜单正是我想要的位置以及我希望它看起来如何,但无论我尝试过什么,它都显示此位置的默认菜单,而不是新的菜单菜单我补充说。
我不确定是否应该添加或更改我命名菜单后面的if语句。我试过复制它,用婚礼菜单替换主要版本,但这没有任何改变。
谢谢!