首頁 >CMS教程 >&#&按 >WordPress函數wp_nav_menu()怎麼用

WordPress函數wp_nav_menu()怎麼用

藏色散人
藏色散人原創
2019-12-04 09:27:252265瀏覽

WordPress函數wp_nav_menu()怎麼用

WordPress函數wp_nav_menu()怎麼用?

1、wp_nav_menu()函數介紹:

worpdress發展到3.0以後增加了一個自訂選單函數wp_nav_menu(),使得wordpress能夠輕鬆的製作自己的導覽選單。

2、如何呼叫導航選單(自訂選單):

在需要呼叫導覽選單(或稱為自訂選單)的地方插入5e532dbe57af06cb635178d7fd60e136來呼叫導航選單,其中$args是函數的參數,後面會詳細說明。

推薦:《WordPress教學

3、wp_nav_menu($args)函式中,參數$args的預設值:

#程式碼如下:

<?php $defaults = array(
’theme_location’ => ,
’menu’ => ,
’container’ => ’div’,
’container_class’ => ’menu-{menu slug}-container’,
’container_id’ => ,
’menu_class’ => ’menu’,
’menu_id’ => ,
’echo’ => true,
’fallback_cb’ => ’wp_page_menu’,
’before’ => ,
’after’ => ,
’link_before’ => ,
’link_after’ => ,
’items_wrap’ => ’<ul id=”%1$s” class=”%2$s”>%3$s</ul>’,
’depth’ => 0,
’walker’ => );
?>

4、wp_nav_menu($args)函數中每個參數的具體意義:

$theme_locaton:(字串)(可選)

預設值: None

用於在呼叫導覽功能表時指定已註冊的某一個導覽功能表名,如果沒有指定,則顯示第一個。

wp_nav_menu(array(    ‘theme_location’   =>’primary’)); //呼叫第一個選單。

$menu:(字串)(可選)

預設值: None

#使用導航選單的名稱呼叫選單,可以是id, slug, name (按順序匹配的) 。

$container:(字串)(可選)

預設值: div

ul 父節點(這裡指導航選單的容器)的標籤類型,只支持div 和nav 標籤, 如果是其它值, ul 父節點的標籤將不會被顯示。也可以用false(container => false)去掉ul父節點標籤。

$container_class:(字串)(可選)

預設值: menu-{menu slug}-container

ul 父節點的 class 屬性值。

$container_id:(字串)(可選)

預設值: None

ul 父節點的 id 屬性值。

$menu_class:(字串)(可選)

預設值: menu

ul 節點的 class 屬性值。

$menu_id:(字串)(可選)

預設值: menu slug, 自增長的

ul 節點的 id 屬性值。

$echo:(布林型)(可選)

預設值: true (直接顯示)

確定直接顯示導覽選單還是傳回HTML 片段,如果想將導航的程式碼作為賦值使用,可設定為false。

$fallback_cb:(字串)(可選)

預設值: wp_page_menu (顯示頁面清單作為選單)

用於沒有在背景設定導覽時調的回調函數。

$before:(字串)(可選)

預設值: None

#顯示在每個選單連結前的文字。

$after:(字串)(可選)

預設值: None

#顯示在每個選單連結後的文字。

$link_before:(字串)(可選)

預設值: None

顯示在每個選單連結文字前的文字。

$link_after:(字串)(可選)

預設值: None

#顯示在每個選單連結文字後的文字。

$items_wrap:(字串)(可選)

預設值: None

使用字串取代修改ul的class。

$depth:(整數)(可選)

預設值: 0

#顯示選單的深度, 當數值為 0 時顯示所有深度的選單。

$walker:物件類型)(可選)

預設值:  new Walker_Nav_Menu

自訂的遍歷對象,呼叫一個物件定義顯示導航選單。

5、如何相容舊版的wordpress:

利用參數$fallback_cb來實現對舊版的wordpress的相容,將參數'sort_column'=>'menu_order' 寫入wp_nav_menu 的參數, 那該參數同時也會傳遞到call_user_func 方法中. 如果call_user_func 是wp_page_menu 方法, 那麼顯示的頁面清單將會以賦予的序號排序輸出.

程式碼如下:

if ( ( !$menu || is_wp_error($menu) || ( isset($menu_items) && empty($menu_items) && !$args->theme_location ) )
&& ( function_exists($args->fallback_cb) || is_callable( $args->fallback_cb ) ) )
return call_user_func( $args->fallback_cb, (array) $args );</p> <p>// 如果找不到指定菜单, 或者菜单不存在任何条目并没有指定自定义菜单, 使用 call_user_func 方法来进行处理

以上是WordPress函數wp_nav_menu()怎麼用的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn