为主题添加多个WordPress3.0自定义菜单

一直认为菜单管理功能(Menus),是WordPress3.0的一个亮点(除了集成了MU,这也可能是唯一的亮点),让你可以灵活地控制导航菜单。通 过便捷的拖放界面,摆脱主题自身的限制,自由创建各种组合的链接:内部链接、外部链接、分类等,并且可以将这些自定义菜单嵌入到主题的任意位置,感觉WordPress越来越接近CMS程序了。当然这些功能都需要主题的支持。之前写过一篇让主题如何支持Wordpress3.0自定义菜单的文章。今天教大家,如何添加多个自定义菜单,就以两个为例。
一、激活主题WordPress3.0自定义菜单功能。
打开主题的functions.php模板文件,添加:

// 自定义菜单
register_nav_menus(
array(
'header-menu' => __( '导航自定义菜单' ),
'footer-menu' => __( '页角自定义菜单' )
)
);

其中:header-menu和footer-menu是菜单的名称之后会用到(可以任意),中文部分将显示在后台菜单设置页面中。

注:添加上面函数后,主题将不能在WordPress3.0以下版本中使用。
二、将调用代码添加到准备显示的位置。
一般是在header中,打开header.php,查找类似:

<?php wp_list_pages('depth=2&title_li='); ?>

或

<?php wp_list_categories('title_li=&orderby=id'); ?>

替换为:

<?php wp_nav_menu( array( 'theme_location' => 'header-menu' ) ); ?>

或

<?php wp_nav_menu( array( 'theme_location' => 'footer-menu' ) ); ?>

其中:header-menu和footer-menu是调用的菜单名称,要与第一步中的相同。
上面的两句函数先只用一个,另一个可放在其它位置,比如sidebar或footer中,看自己喜好了。
三、根据不同的位置适当定义一下CSS样式。
至此完成全部主题修改操作。
再打开后台菜单选项页面,会看到如下显示:

nav-5ff

然后根据自己需要组合不同的两组菜单,分别应用到两个菜单中。

Comments

23 responses to “为主题添加多个WordPress3.0自定义菜单”

  1. 永恒之塔基地 Avatar

    看起来怎么有点迷糊呢?

  2. 永恒之塔基地 Avatar

    看来是水平太低了?

  3. 柳亚 Avatar

    呃,还是有点麻烦顺,为什么不能在后台直接设置呢。。。杯具。。。

  4. Sinoneo Avatar

    是感觉有点麻烦。。。

  5. 免费电影排行榜 Avatar

    3.0不是有这功能吗,怎么还要改?

  6. 有点蓝 Avatar

    恕我愚钝 至今不知道这个自定义menu是干嘛用的

    1. 酋 长 Avatar

      这个的中文翻译就是菜单,你看到的Wopus的导航,现在用这个功能,很容易实现。

  7. […] print? 1.<BR>// 自定义菜单<BR>register_nav_menus(<BR>array(<BR>’header-menu’ => __( ‘导航自定义菜单’ ),<BR>’footer-menu’ => __( ‘页角自定义菜单’ )<BR>)<BR>); […]

  8. 水木 Avatar
    水木

    弄了一下终于搞掂这个菜单了。现在可以直接修改导航栏,超方便~~

  9. 1pondo Avatar

    要不是因为这个自定义菜单,我都不会升级到 wp 3.0

  10. HelP XIu Avatar

    我在header.php 找不到

    或

    view sourceprint?1.

    怎么办 弄了很久也没启用 这个功能 烦啊

  11. […] 一、激活主题WordPress3.0自定义菜单功能。 打开主题的functions.php模板文件,添加: view source […]

  12. 雁 Avatar

    还是模模糊糊··其实我觉得wp应该强化这功能 应该多好啊

  13. 何苦呢 Avatar

    现在3.1了 更新的很快

  14. youanan Avatar

    第一步,不知道添加在哪里?

    1. 酋 长 Avatar

      在wp-config.php中。

  15. god Avatar
    god

    为什么我怎么组合 都只显示1个 愁死我了。。

  16. […] 一直认为菜单管理功能(Menus),是WordPress3.0的一个亮点(除了集成了MU,这也可能是唯一的亮点),让你可以灵活地控制导航菜单。通 过便捷的拖放界面,摆脱主题自身的限制,自由创建各种组合的链接:内部链接、外部链接、分类等,并且可以将这些自定义菜单嵌入到主题的任意位置,感觉WordPress越来越接近CMS程序了。当然这些功能都需要主题的支持。之前写过一篇让主题如何支持Wordpress3.0自定义菜单的文章。今天教大家,如何添加多个自定义菜单,就以两个为例。 一、激活主题WordPress3.0自定义菜单功能。 打开主题的functions.php模板文件,添加: view source […]

  17. 小辉 Avatar

    请问你这个代码高亮显示用的什么插件啊?找了好久都找不到好用的。。。

  18. f Avatar
    f

    代码不行啊。

  19. Work.net Avatar
    Work.net

    为什么我添加了
    只显示A导航 不显示B导航

    怎么能让B导航出现自网站底端呢

  20. […] c3、为主题添加多个WordPress3.0自定义菜单 […]

  21. […] c3、为主题添加多个WordPress3.0自定义菜单 […]