2

我正在使用带有twitter 引导程序的wordpress ,在其中尝试设计导航菜单...

我已经调用并在其中定义了函数参考/wp nav 菜单wp_nav_menu中提到的相关参数...

我想要做的是向容器菜单添加多个类,例如:-

wp_nav_menu( array( 
    'menu_class' => 'class1 class2 class3', 
    'container_class' => 'nav-collapse collapse',
) );

它根本不起作用,浏览器确实显示menu-menu-container类...container_class

让它发挥作用的诀窍是什么?难道我做错了什么?

4

1 回答 1

3

Wordpress默认扩展菜单类名称:

... class="menu-'.$menu->slug .'-container"';

来源:http ://core.trac.wordpress.org/browser/trunk/wp-includes/nav-menu-template.php#L202

您可以使用自己的walker 类。它实际上并没有“做”(在生成 HTML 的意义上)任何事情。它只是跟踪树的每个分支:它必须由其他类扩展,这些类告诉它对遇到的每个元素做什么。

WordPress 提供了自己的扩展类,例如:

  • Walker_Nav_Menu– 用于显示导航菜单的 HTML
  • Walker_Page– 用于显示页面列表
  • Walker_Category– 用于显示分类术语列表。

例子:

$walker = new Custom_Walker_Menu();

wp_nav_menu( array( 
    'menu_class' => 'class1 class2 class3', 
    'container_class' => 'nav-collapse collapse',
    'walker' => $walker
) );

请阅读参考资料:Class Reference/Walker

有许多自定义 WordPress 导航步行器类要实现,请查看此存储库

于 2013-08-06T06:36:27.117 回答