wordpress开发:wp_bootstrap_navwalker

navwalker下载地址

链接:https://pan.baidu.com/s/1r1_Dvo2Hnfwpn0_aW_8nvA
提取码:qn7p

使用方法

打开functions.php,使用register_nav_menus()函数来注册菜单:

 

[php]
register_nav_menus( array(
‘primary’ => __( ‘Primary Menu’, ‘THEMENAME’ ),
) );
[/php]

创建Walker对象 Walker对象是Wordpress用来扩展自身功能的一个辅助机制,让开发者在不修改程序源代码的基础上扩展自己需要的功能,比如我们要对导航菜单Nav_Menu进行扩展,则只需要创建一个继承Walker_Nav_Menu类库(该类继承的Walker基类)的对象即可。 国外已经有先驱写好Walker了,我们直接拿来用即可,鉴于大陆网民可能很难访问原网站,博主已经打包放在code上了,如果你使用的Bootstrap2则下载后面即可,传送门:bootstrap3、bootstrap2。 我们最好将该类库放在主题独立的文件中比如”inc/wp_bootstrap_navwalker.php”,然后在functions.php中引入:

 

[php]

// Register Custom Navigation Walker
require_once get_template_directory() . ‘/inc/class-wp-bootstrap-navwalker.php’;

[/php]

模板中调用导航菜单 我们知道Wordpress有个直接调用导航条的函数wp_nav_menu($args=array()),我们要自己定义一个类似功能的函数吗?No,我们仍然利用WP原生的导航条函数,下面简单介绍我们本教程需要用到的几个参数。

//theme_location:主题functions.php中注册菜单的位置标识;

//depth:菜单的深度,比如”2″表示只显示二级菜单;

//container:包含菜单的容器,默认为”div”,我们可以设置为false表示不需要外容器;

//menu_class:菜单项ul的样式;

//fallback_cb:如果后台未创建菜单时候的回调函数;

//walker:自定义的辅助函数;

知道各参数的意义了,下面我们直接在合适的地方调用函数即可。

 

[php]
<?php wp_nav_menu(array( ‘theme_location’ => ‘primary’,
‘depth’ => 2,
‘container’ => FALSE,
‘menu_class’ => ‘nav navbar-nav’,
‘fallback_cb’ => ‘Wp_Bootstrap_Navwalker::fallback’,
‘walker’ => new Wp_Bootstrap_Navwalker()
));
?>
[/php]

 

发表评论

邮箱地址不会被公开。 必填项已用*标注