已创建自定义菜单,但不显示在管理面板中

时间:2013-10-06 作者:Istiaque Ahmed

我正在发展自己的主题。在里面functions.php 我补充道-

add_action( \'init\', \'register_my_menus\' ); 

function register_my_menus() { register_nav_menus( array(

         \'front_login_menu\' => _( \'front_login_menu location\'),
         \'top_front_general_menu\' => _( \'top_front_general_menu\'),
         \'top_general_menu\' => _( \'top_general_menu\'),
         \'top_student_menu\' => _( \'top_student_menu\'),
         \'top_admin_menu\' => _( \'top_admin_menu\'), 
         \'top_trainer_menu\' => _( \'top_trainer_menu\' ) ) ); }
然后,我在管理面板中创建了自定义菜单。但我突然发现,除了一个菜单之外,这些菜单在Appearance -> Menus 页,但主题位置确实存在。但这些菜单在我的localhost中是可见的。我也应该在在线服务器中创建它们(如果不是全部的话,也应该创建一些)。

如果我想创建其中一个缺失的菜单,则消息会显示:

The menu name .... conflicts with another menu name. Please try another.

如何使这些菜单名显示在主题位置的右侧?

1 个回复
SO网友:Mayeenul Islam

我不认为你需要再次启动菜单register_nav_menus() 它本身就是一个发起人。

Syntax: <?php register_nav_menu( \'your-menu-handle\', \'Your Menu Label\' ); ?>

复制以下代码并将其粘贴到functions.php without 任何功能或add_action(), 我希望它能起作用:

register_nav_menus(
    array(
     \'front_login_menu\' => __( \'Front Login Menu location\'),
     \'top_front_general_menu\' => __( \'Top Front General Menu\'),
     \'top_general_menu\' => __( \'Top General Menu\'),
     \'top_student_menu\' => __( \'Top Student Menu\'),
     \'top_admin_menu\' => __( \'Top Admin Menu\'), 
     \'top_trainer_menu\' => __( \'Top Trainer Menu\' )
    )
);
在要显示菜单的主题中使用以下代码:

<?php wp_nav_menu (
            array (
                \'theme_location\'=>\'front_login_menu\', //change the slug here where necessary
                \'fallback_cb\'=>\'\'
            )
        ); ?>

结束

相关推荐

Primary and secondary menus

我试图使主菜单上的每个选项卡都链接到次菜单,这样实际上,每个主选项卡都会指向次菜单中的一组选项卡,而不是保持静态。我希望你能帮助我,我不是一个高级WP用户,所以可以使用简单的术语。更新我已经添加了代码,但它已经显示在我的网页和仪表板上,所以我一定是弄错了,所以我将其粘贴在下面,以便您可以看到。我不知道如何找到主弹头,但我想这是我在主弹头上添加的内容。function km_dynamic_secondary_menu_reg() { global $km_nav_menus;