Add extra menu to theme

时间:2011-11-07 作者:anu

向已有菜单位置的主题添加额外菜单位置的最佳方法是什么?

我想在当前只有一个自定义菜单的主题的子主题中添加一个额外菜单(这里的正确术语是什么?!)。

我只是使用register_nav_menu() 要创建其他菜单?

3 个回复
最合适的回答,由SO网友:anu 整理而成

回答我自己的问题

二者都register_nav_menu()register_nav_menus()additive, 即它们添加到现有菜单集(只要您使用不同的位置标识符)。您不需要重新声明使用其中任何一个调用创建的现有自定义菜单位置。

SO网友:Daniel Sachs

注册菜单有两个功能:1。register\\u nav\\u菜单2。register\\u nav\\u菜单。第一个只注册一个菜单位置,另一个接受菜单数组。因此,如果要添加新的菜单位置,则需要使用register\\u nav\\u menus();

    register_nav_menus( array(
                    \'your_current_menu_location\' => __( \'Your current menu label\', \'your_theme\' ),
                    \'additional_location_\' => __( \'Your additional menu label\', \'your_theme\'),

        //etc...
                ) );

SO网友:Jeremy Jared

您需要将其添加到函数中。php文件,并删除现有的nav\\u菜单功能:

<?php
add_action( \'init\', \'register_my_menus\' );
function register_my_menus() {
register_nav_menus(
  array(
    // Add Your Current Menu Register Here And Replace The Current Code With This
    \'secondary\' => \'secondary\' ,
    \'tertiary\' =>  \'tertiary\',
    )
  );
}
?>

To use the menu\'s you would place this in the template desired:

<?php wp_nav_menu( array( \'theme_location\' => \'secondary\' ) ); ?>

OR:

<?php wp_nav_menu( array( \'theme_location\' => \'tertiary\' ) ); ?>

结束

相关推荐

Menu API not switching menus?

我正在使用菜单API,我想切换到其他菜单,但出于某种原因,它保留了第一个菜单这是我的密码在函数中。php add_action( \'init\', \'register_my_menus\',10 ); function register_my_menus() { register_nav_menu(\'main-navigation\', \'Main Navigation\'); } 下面是我的主题文件(header.ph