items_wrap not working

时间:2013-08-26 作者:Sebastian Starke

我以这种方式注册了wordpress菜单:

function nothing_register_menus() {
  register_nav_menu(\'header-menu\',__( \'Header Menu\' ));
}
add_action( \'init\', \'nothing_register_menus\' );
我这样调用wp\\u nav\\u菜单:

wp_nav_menu( array(
                \'theme_location\' => \'header-menu\',
                \'container\' => false,
                \'echo\' => false,
                \'menu_class\' => \'nav-menu horiz-menu container\',
                \'items_wrap\' => \'<ul class="sixteen columns">%3$s</ul>\'
            ) )
但是输出看起来总是一样的。menu类是正确的,但包装ul从来没有类。

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

你的问题在你的使用中\'menu_class\'\'items_wrap\' 未同步。

您可以编辑:

wp_nav_menu( array(
                \'theme_location\' => \'header-menu\',
                \'container\' => \'\',
                \'echo\' => \'0\',
                \'menu_class\' => \'nav-menu horiz-menu container sixteen columns\',
                \'items_wrap\' => \'<ul class="%2$s">%3$s</ul>\'
            ) )
或:

wp_nav_menu( array(
                \'theme_location\' => \'header-menu\',
                \'container\' => \'\',
                \'echo\' => \'0\',
                \'items_wrap\' => \'<ul class="nav-menu horiz-menu container sixteen columns">%3$s</ul>\'
            ) )
抱歉我的英语不好!

SO网友:vancoder

直接从the codex:

$items\\u wrap(string)(可选)作为sprintf()表达式的格式字符串参数进行计算。格式字符串通过编号标记合并了其他参数。%1$s扩展为“menu\\u id”参数的值,%2$s扩展为“menu\\u class”参数的值,%3$s扩展为列表项的值。如果从格式字符串中省略了带编号的标记,则会从菜单标记中省略相关参数。默认值:%3$s

因此items_wrap 应如下所示:

\'items_wrap\' => \'<ul class="%2$s">%3$s</ul>\'
在哪里%2$s 将替换为“导航菜单水平菜单容器”。

我不知道“十六列”类将在何处呈现。

结束

相关推荐

在POST循环外部加载Comments.php模板

我正在通过ajax加载帖子,并使用$post = get_post( $post_ID );是否有方法加载注释。在我输出帖子后使用php模板?我尝试使用:global $withcomments; $withcomments = true; comments_template(); 但它不在循环中,因此它不加载模板。我正在尝试获取我的评论表单和任何当前的评论来显示,只是遇到了一些困难。任何帮助都将不胜感激!