http://codex.WordPress.org/Function_Reference/wp_nav_menu
wp_nav_menu()方法位于wp-includes/nav-menu-templates.php文件中。
其主要用途是通過該方法,實現后臺的生成菜單調用。
使用該功能之前,必須激活主題3.0+菜單功能。
激活方法如下:
在functions.php文件中加入if(function_exists('register_nav_menus')){
register_nav_menus(
array(
'header-menu' => __( '導航自定義菜單' ),
'footer-menu' => __( '頁角自定義菜單' ),
'sider-menu' => __('側邊欄菜單')
)
);
}
上面這些,只是菜單的位置,并不是菜單的內容。菜單的內容,得在后臺添加。
簡單調用如下:
<?php wp_nav_menu(
array(
'theme_location' => '' //指定顯示的導航名,如果沒有設置,則顯示第一個
'menu' => 'header-menu',
'container' => 'nav', //最外層容器標簽名
'container_class' => 'primary', //最外層容器class名
'container_id' => '',//最外層容器id值
'menu_class' => 'sf-menu', //ul標簽class
'menu_id' => 'topnav',//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">%3$s</ul>',
'depth' => 0,////顯示的菜單層數,默認0,0是顯示所有層
'walker' => ''// //調用一個對象定義顯示導航菜單 )); ?> //可以通過這個來顯示默認的。
根據是否登錄生成不同該菜單欄
<?php
if ( is_user_logged_in() ) {
wp_nav_menu( array( 'theme_location' => 'logged-in-menu' ) );
} else {
wp_nav_menu( array( 'theme_location' => 'logged-out-menu' ) );
}
?>
移除菜單欄
<?php
function my_wp_nav_menu_args( $args = '' )
{
$args['container'] = false;
return $args;
} // function
add_filter( 'wp_nav_menu_args', 'my_wp_nav_menu_args' );
?>
或者
<?php wp_nav_menu( array( 'container' => '' ) ); ?>
主題貓WP建站,累計幫助1300+客戶成功建站,為站長提供支持!
立刻開啟你的建站之旅