在Wordpress 3主题中启用菜单

时间:2012-02-06 18:25:03

标签: wordpress wordpress-theming

我是一个wordpress noobie。

我正在制作一个新的Wordpress主题。我使用的是版本3.3.1。我已经读过,为了制作菜单,我应该使用每个主题的“菜单”部分:

http://awesomescreenshot.com/01atql42e

但是当我激活我自己的主题我创建时,该选项不存在。

http://awesomescreenshot.com/0f0tqmhc6

我错过了什么?

2 个答案:

答案 0 :(得分:8)

Wordpress更改了3.0中的代码,生成可能正在使用旧代码的导航。新功能在此处的codex中有所描述。

http://codex.wordpress.org/Function_Reference/wp_nav_menu

您还必须在functions.php中包含此内容

add_theme_support('menus');

这是一个很好的教程。

http://millionclues.com/problogging/wordpress-tips/make-your-theme-wordpress-3-0-compatible/

答案 1 :(得分:4)

看到你如何说你对编码缺乏经验,我准备了一些代码片段供你插入你的功能和...头文件,但我建议你看看它们是如何创建的,这样你就可以更熟悉Wordpress的功能了。就像thenetimp所说,你必须为你的主题添加菜单支持,可以通过 add_theme_support('menus')功能来完成,之后,你可以使用函数 register_nav_menus注册多个菜单(%menu array%),函数内有一系列菜单,如下所示:

add_theme_support( 'menus' );
if ( function_exists( 'register_nav_menus' ) ) {
    register_nav_menus(
        array(
          'header-menu' => 'Header Menu',
          'footer-menu' => 'Footer Menu'
        )
    );
}

此功能为菜单添加主题支持,并添加单个菜单'Header Menu'和& '页脚菜单',可在您的主题中调用。为此,您可以使用 wp_nav_menu(%menu name%)功能。无论您为“菜单名称”添加什么,Wordpress都会在您网站的数据库中查找该菜单,并显示其内容。因此,如果您想调用我们之前创建的标题菜单,您可以使用header.php文件中的代码:

 <?php wp_nav_menu( array(
                            'theme_location' => 'header-menu',
                            'container' =>'nav',
                            'menu_class' => 'menu header-menu'
                          )
                    ) ?>

此代码将从“header-menu”位置获取菜单,将其包装在nav元素中,并为其指定“菜单标题菜单”(在设置菜单样式时可能会有所帮助)。我只展示了几个选项,这样你就不会感到困惑,但如果你很好奇,你可以在Wordpress的文档站点(link)找到更多信息