WP_PAGE_MENU不工作,对吗?

时间:2014-07-19 作者:Oleg2tor

我尝试在自定义主题中创建简单的菜单。WordPress版本是3.9.1,所以我从这里获取代码http://codex.wordpress.org/Function_Reference/wp_nav_menu, 只需更改菜单和容器类/id即可更好地进行调试。

<?php
            wp_nav_menu(
                array(
                    \'theme_location\'  => \'\',
                    \'menu\'            => \'\',
                    \'container\'       => \'div\',
                    \'container_class\' => \'container_class\',
                    \'container_id\'    => \'container_id\',
                    \'menu_class\'      => \'menu_class\',
                    \'menu_id\'         => \'menu_id\',
                    \'echo\'            => true,
                    \'fallback_cb\'     => \'wp_page_menu\',
                    \'before\'          => \'\',
                    \'after\'           => \'\',
                    \'link_before\'     => \'\',
                    \'link_after\'      => \'\',
                    \'items_wrap\'      => \'<ul id="%1$s" class="%2$s">%3$s</ul>\',
                    \'depth\'           => 0,
                    \'walker\'          => \'\'
                )
            );
        ?>
但它创建了以下代码:

<div class="menu_class">
    <ul>
        <li class="page_item page-item-2">
            <a href="http://localhost/?page_id=2">Пример страницы</a>
        </li>
    </ul>
</div>
与预期不同的是:

<div id="container_id" class="container_id">
    <ul id="menu_id" class="menu_class">
        <li class="page_item page-item-2">
            <a href="http://localhost/?page_id=2">Пример страницы</a>
        </li>
    </ul>
</div>
我做错了什么?非常感谢。

UPDATED我在功能上已经有了这个代码。php:

<?php

function bd_setup() {
    register_nav_menu( \'primary\', __( \'Primary Menu\' ) );
}

add_action( \'init\', \'bd_setup\' );
SOLVED在外观->菜单中创建菜单并在外观->菜单->管理位置中分配后,我得到了预期的代码。

1 个回复
最合适的回答,由SO网友:OmAk 整理而成

我尝试了你的代码,它对我来说非常好,输出如下:

<div class="container_class" id="container_id">
<ul class="menu_class" id="menu_id">
   <li class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-154"><a href="http://www.ohitsfunny.com/category/funny/">Funny</a></li>
   <li class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-159"><a href="http://www.ohitsfunny.com/category/jokes-2/">Jokes</a></li>
   <li class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-156"><a href="http://www.ohitsfunny.com/category/love/">Love</a></li>
   <li class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-155"><a href="http://www.ohitsfunny.com/category/motivational/">Motivational</a></li>
   <li class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-157"><a href="http://www.ohitsfunny.com/category/political/">Political</a></li>
   <li class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-158"><a href="http://www.ohitsfunny.com/category/news/">News</a></li>
</ul>
</div>
我认为您可能缺少参数“theme\\u location”,并且在该位置没有找到菜单正在执行回退“wp\\u page\\u menu”。它没有使用您在调用“wp\\u nav\\u menu”中提到的类。

如果您不知道“theme\\u位置”可能是什么:

function register_my_new_menu() {
  register_nav_menus( array(
    \'custom-menu\'   =>  __( \'Custom Menu\', \'the-bootstrap\' )
    // Theme Location: custom-menu
    // Menu Name: Custom Menu
    // Create and assign a menu to this location in Dashboard->Menus
  ) );
}
add_action( \'after_setup_theme\', \'register_my_new_menu\' );
抱歉,如果我了解了你已经知道的基本情况。

结束

相关推荐

Problem with custom menus

在菜单上,我说的是自定义菜单,我有一个带有几列的页脚,每列都有一个项目列表,每列菜单都需要从wp admin上的菜单选项进行更新,所以我创建了关于函数的部分。调用菜单并在页脚上添加每个菜单的php。php文档,类似于:<?php wp_nav_menu( array(\'menu\' => \'f-1\', \'menu_class\' => \'\', \'container\' => \'nav\' )); ?> <?php wp_nav_menu( arr