2014-12-02 118 views
0

我想出来的我的模板吐每一页上这个菜单,在我的主题的header.php文件:我的自定义菜单在Wordpress中没有显示?

enter image description here

注:主题自带的菜单3点的位置,但我会用这些对不同的菜单,因此我不能使用这些预先存在的位置。

我试着用这functions.php将其注册:

function register_my_menu() { 
     register_nav_menu('utility-menu',__('Utility')); 
} 
add_action('init', 'register_my_menu'); 

这将注册它,var_dump(get_registered_nav_menus());回报:

array(4) { 
    ["menu-header"]=> 
    string(11) "Menu Header" 
    ["menu-top"]=> 
    string(8) "Menu Top" 
    ["wpv-push-menu"]=> 
    string(9) "Push Menu" 
    ["utility-menu"]=> 
    string(7) "Utility" 
} 

但是,这似乎并没有联系起来。我明显地以错误的方式做事,有人可以指出我不理解的事情吗?我想知道如何正确取出菜单的正确方法。

wp_nav_menu(array('name' => 'Utility')); 
wp_nav_menu(array('theme_location' => 'utility-menu')); 

似乎拉不同的菜单。

回答

1

您应该在after_setup_theme期间注册您的菜单,而不是init

add_action('after_setup_theme', 'register_my_menu'); 
function register_my_menu(){ 
    register_nav_menu('utility-menu', 'Utility Menu'); 
} 

然后,在你的菜单管理,保证分配任何你想要的菜单功能菜单(你会通过菜单头,菜单顶部,等看到菜单设置下

后做这两件事,你会像你在第二个例子中那样称呼它:

wp_nav_menu(array(
    'theme_location' => 'utility-menu' 
)); 
+0

完美,谢谢。 – 2014-12-02 23:29:58

相关问题