wordpress函数wp_nav_menu()参数说明

wp_nav_menu()函数是在wordpress 3.0版本增加的一个自定义菜单函数,通过该函数可以非常轻松方便地自定义模板的导航菜单,站长只需要在当前主题模板导航显示的位置添加函数<?php wp_nav_menu($args);?>就可以实现自定义菜单的调用,其中$args是该函数的参数,以下同参数的具体说明,可以根据自己的需要设置各项参数!

wp_nav_menu()函数默认参数及说明:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
<?php 
	wp_nav_menu(array(
		'theme_location'  => '',	//指定显示的导航名,如果没有设置,则显示第一个
		'menu'            => '',
		'container'       => 'div',	 //最外层容器标签名
		'container_class' => 'menu-{menu slug}-container',	//最外层容器class名
		'container_id'    => '',	//最外层容器id值
		'menu_class'      => 'menu',	//ul标签class
		'menu_id'         => '',	//ul标签id
		'echo'            => true,	//是否打印,默认是true,如果想将导航的代码作为赋值使用,可设置为false
		'fallback_cb'     => 'wp_page_menu',	//备用的导航菜单函数,用于没有在后台设置导航时调用
		'before'          => '',	//显示在导航a标签之前
		'after'           => '',	//显示在导航a标签之后
		'link_before'     => '',	//显示在导航链接名之后
		'link_after'      => '',	//显示在导航链接名之前
		'items_wrap'      => '<ul id="%1$s" class="%2$s">%3$s</ul>',
		'depth'           => 0,	//显示的菜单层数,默认0,0是显示所有层
		'walker'          => ''	//调用一个对象定义显示导航菜单 
		)
	); 
?>

wp_nav_menu()函数参数的具体说明:

  • $theme_locaton:(字符串)(可选)
    用于在调用导航菜单时指定注册过的某一个导航菜单名,如果没有指定,则显示第一个。默认值: None
  • $menu:(字符串)(可选)
    使用导航菜单的名称调用菜单,可以是 id, slug, name (按顺序匹配的)。默认值: None
  • $container:(字符串)(可选)
    ul 父节点(这里指导航菜单的容器)的标签类型,只支持div 和 nav 标签, 如果是其它值, ul 父节点的标签将不会被显示。也可以用false(container => false)去掉ul父节点标签。默认值: div
  • $container_class:(字符串)(可选)
    ul 父节点的 class 属性值。默认值: menu-{menu slug}-container
  • $container_id:(字符串)(可选)
    ul 父节点的 id 属性值。默认值: None
  • $menu_class:(字符串)(可选)
    ul 节点的 class 属性值。默认值: menu
  • $menu_id:(字符串)(可选)
    ul 节点的 id 属性值。默认值: menu slug, 自增长的
  • $echo:(布尔型)(可选)
    确定直接显示导航菜单还是返回 HTML 片段,如果想将导航的代码作为赋值使用,可设置为false。默认值: true (直接显示)
  • $fallback_cb:(字符串)(可选)
    用于没有在后台设置导航时调的回调函数。默认值: wp_page_menu (显示页面列表作为菜单)
  • $before:(字符串)(可选)
    显示在每个菜单链接前的文本。默认值: None
  • $after:(字符串)(可选)
    显示在每个菜单链接后的文本。默认值: None
  • $link_before:(字符串)(可选)
    显示在每个菜单链接文本前的文本。默认值: None
  • $link_after:(字符串)(可选)
    显示在每个菜单链接文本后的文本。默认值: None
  • $items_wrap:(字符串)(可选)
    使用字符串替换修改ul的class。默认值: None
  • $depth:(整型)(可选)
    显示菜单的深度, 当数值为 0 时显示所有深度的菜单。默认值: 0
  • $walker:(对象型)(可选)
    自定义的遍历对象,调用一个对象定义显示导航菜单。默认值:  new Walker_Nav_Menu

兼容旧版本的wordpress:

利用参数$fallback_cb来实现对旧版本的wordpress的兼容,将参数 ‘sort_column’=>’menu_order’ 写入 wp_nav_menu 的参数,那该参数同时也会传递到 call_user_func 方法中。如果 call_user_func 是 wp_page_menu 方法,那么显示的页面列表将会以赋予的序号排序输出。

发表留言