个性化阅读
专注于IT技术分析

WordPress子主题,添加辅助菜单

    <?php
    if ( function_exists('has_nav_menu') && has_nav_menu('primary-menu') ) {
        wp_nav_menu( array( 'sort_column' => 'menu_order', 'container' => 'ul', 'menu_id' => 'main-nav', 'menu_class' => 'nav fl', 'theme_location' => 'primary-menu' ) );
    } else {
    ?>

我正在尝试在Woothemes Canvas的子主题的functions.php中的Wordpress菜单管理中添加辅助菜单。我认为有一种方法可以将其添加到上面的数组中, 但是我无法使其正常工作。有什么想法吗?


#1


杰森, 你首先需要使用register_nav_menu()注册”新”(辅助)菜单, 例如:

add_action( 'init', 'register_my_menu' );

function register_my_menu() {
    register_nav_menu( 'secondary-menu', __( 'Secondary Menu' ) );
}

你可以在主题的functions.php文件中执行此操作。

然后, 你可以在模板文件中调用该菜单。要使用上面的代码, 你可能需要类似以下内容:

if ( function_exists('has_nav_menu') && has_nav_menu('secondary-menu') ) {
        wp_nav_menu( array( 'sort_column' => 'menu_order', 'container' => 'ul', 'menu_id' => 'secondary-nav', 'menu_class' => 'nav fl', 'theme_location' => 'secondary-menu' ) );
    }

或许

if ( function_exists('has_nav_menu') && has_nav_menu('primary-menu') && has_nav_menu('secondary-menu') ) {
        wp_nav_menu( array( 'sort_column' => 'menu_order', 'container' => 'ul', 'menu_id' => 'main-nav', 'menu_class' => 'nav fl', 'theme_location' => 'primary-menu' ) );

        wp_nav_menu( array( 'sort_column' => 'menu_order', 'container' => 'ul', 'menu_id' => 'secondary-nav', 'menu_class' => 'nav fl', 'theme_location' => 'secondary-menu' ) );
    }

第二个菜单将同时输出两个菜单(如果两个菜单均存在), 除了你在初始问题中发布的菜单之外, 第一个菜单可能还会被使用。


#2


但就我而言, 我没有使用init动作, 只是将菜单注册功能放在子主题的function.php文件中

register_nav_menu( 'footer', 'Footer Menu' );
赞(0)
未经允许不得转载:srcmini » WordPress子主题,添加辅助菜单

评论 抢沙发

评论前必须登录!