麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁 > 網(wǎng)站 > 建站經(jīng)驗 > 正文

WordPress開發(fā)中自定義菜單的相關(guān)PHP函數(shù)使用簡介

2024-04-25 20:43:51
字體:
供稿:網(wǎng)友

函數(shù)意義

wp_nav_menu ()

自定義菜單顯示函數(shù)

register_nav_menu ()

自定義菜單注冊函數(shù) – 單數(shù)

register_nav_menus ()

自定義菜單注冊函數(shù) – 復(fù)數(shù) (很蛋疼的一個復(fù)數(shù)形式)

以下舉例均用 register_nav_menus () 這個復(fù)數(shù)形式,以免混淆。

使用位置

register_nav_menus ()

function.php 文件中,用于注冊自定義菜單在后臺的代碼調(diào)用名稱和后臺顯示名稱。

wp_nav_menu ()

主題任意你想調(diào)用自定義菜單的位置。

使用方法

注冊4個菜單更正:3個菜單(困了,老出錯。)

register_nav_menus( array(

'nav1' => 'n1',

//nav1 為菜單名稱(調(diào)用的時候用)

//n1 為顯示名稱 , 后臺選菜單的時候用

'nav2' => 'n2',

'nav3' => 'n3'

));

然后去你的后臺 =》 外觀 =》 菜單 里面看下,

基本上你就明白了,

要是不明白,

那你就再看一下,嘿嘿~

主題你想要顯示自定義導(dǎo)航的位置添加以下代碼。

//調(diào)用 nav1 的菜單

<?php wp_nav_menu( array( 'theme_location' => 'nav1' ) ); ?>

//調(diào)用 nav2 的菜單

<?php wp_nav_menu( array( 'theme_location' => 'nav2' ) ); ?>

然后就可以到后臺去添加一個菜單了,(名稱最好是名稱或中文。更正:最好是英文。)

你可以設(shè)定這個菜單里面顯示什么,不顯示什么,甚至可以設(shè)置導(dǎo)航的層級內(nèi)容,很方便的說。

過濾掉自定義菜單中無用的CLASS值

在 WordPress 的自定義菜單的輸出中,菜單中每一個子元素都有一個很長的 class 值,雖然從外觀上看不出什么異樣來,但從代碼上看確實讓人心里很難受,其實要過濾掉這些 class 值有很多方法,今天來講一下通過掛載過濾器 (filter),去除那些我們不想要的class。

在 WordPress 3.5.0 以后的版本中將取消友情鏈接功能,并以自定義菜單功能實現(xiàn),這個是后話。

我們在輸出自定義菜單的時候,為了讓我們更好的控制自定義樣式, WordPress 會默認給我們菜單的子元素輸出很多個 class 的值,就像下面這樣。

<li id="menu-item-19" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-19">

如何過濾之,讓我們的網(wǎng)頁源代碼變得簡潔、易讀呢?

在你的functions.php里面加入

function filter_nav_menu_css_class ($classes){

//想要通過的class值

$do_class_name = array('current-menu-item');

$outPut = array_intersect($do_class_name,$classes);

array_filter( $classes );
return $outPut;

};

add_filter('nav_menu_css_class','filter_nav_menu_css_class');

這里將 current-menu-item 這個值保留主要是為了辨別當(dāng)前頁面。

其實,

還有其他方法去過濾輸出的 class 值的,

比如說控制 Walker_Nav_Menu 這個類來精確控制自定義菜單的輸出,

但因為比較麻煩所以在這里先不提,其實 Walker_Nav_Menu 這個類可以完成更多我們需要的功能。

總結(jié) – 需注意

自定義菜單式在 WordPress 3.0 后才引入的一個功能概念,有點類似于之前的小工具,不過自定義菜單更傾向于導(dǎo)航用途,但因為新功能的中文翻譯、流傳較慢,再加上這個功能只要是主題成型的愛折騰的博主一般不會在導(dǎo)航方面折騰,所以大家還一直不了解,甚至都出現(xiàn)了錯誤教程滿天飛得局面,在這里希望有的博主在發(fā)表博文的時候不要以轉(zhuǎn)載為主,就算是轉(zhuǎn)載一些主要功能請具體測試一下,以免誤導(dǎo)新人。

需注意:

后臺設(shè)置中如果沒有給自定義導(dǎo)航里面設(shè)定菜單的話,那wp會為沒有設(shè)定菜單的導(dǎo)航里自動添加所有頁面為導(dǎo)航,這是一個蛋疼的缺省,所以如果這個導(dǎo)航我們不想顯示的話,你最好能在后天設(shè)定一個空的菜單,然后給不想顯示的導(dǎo)航添加這個菜單,這樣自定義導(dǎo)航就不會顯示了。

發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 久久综合福利 | 国产成人在线一区 | 福利免费视频 | 国产无遮挡一级毛片 | 成人午夜在线播放 | 91精品国产99久久久久久 | 精品视频一区二区三区四区 | 亚欧在线免费观看 | 港台三级在线观看 | 欧美精品久久久久久久久老牛影院 | 黄色影院一级片 | 三人弄娇妻高潮3p视频 | 极品大长腿啪啪高潮露脸 | 毛片大全 | 中文字幕一区2区 | 久久精品亚洲一区二区 | 成人福利在线 | 欧美淫交 | 羞羞答答xxdd在线播放 | 亚洲电影在线播放 | 最污网站| 369看片你懂的小视频在线观看 | 午夜久久久久 | 国产精品免费看 | 一级成人欧美一区在线观看 | 911网站大全在线观看 | 色婷婷一区二区三区 | 国产精品久久久久久影视 | 91嫩草丨国产丨精品入口 | 国产一级午夜 | 美女视频黄a视频免费全过程 | 久久国产精品无码网站 | 免费a视频在线观看 | 欧美日韩在线中文 | 国产亚洲精彩视频 | 精品久久久久久久久久久aⅴ | 国产黄色录像片 | 五月天影院,久久综合, | 成人国产在线看 | 斗罗破苍穹在线观看免费完整观看 | 亚洲国产精品久久久久久久久久 |