WordPress 3.0 Menus|自定義選單

這幾天WordPress 3.0正式推出了,增加了不少新功能其中一個便是今天要介紹的Custom Menus(自定義選單)功能,透過這項功能可以直接在後台靈活對導航選單進行編輯,但這款新功能要主題有支援才能對位於頁首的導航列進行後台編輯,不然就只能使用在widgets上,所幸整個程式碼改寫上並不會很傷大腦(除非你家使用的主題很特殊…),話不多說馬上開始改寫囉~~

首先開啟主題目錄下的functions.php
在裡面最後一行的?>之前一行加入以下程式碼:

// WordPress 3.0 Menus Support
register_nav_menus( array(
	'primary' => __( 'Primary Navigation'),
) );

 

然後開啟header.php
由於每個主題對於導航列的寫法不盡相同,所以建議模糊尋找,主要關鍵字是wp_list_pages
以我家arthemia為例,找到是像如下這樣:

		

 

然後替換為如下程式碼:

 'page-bar', 'menu_class' => 'left clearfloat', 'theme_location' => 'primary') ); ?>

 

但是在替換前先注意看wp_nav_menu這一行,menu_id 的數值跟原本的 ul 標籤的 id 數值是一樣的,menu_class則是要跟ul 標籤的 class 數值一樣,如果你的是 ul 標籤有其中一項沒設定的話可以直接拿掉沒有設定的部份。

這樣程式碼的改寫就完畢囉,再來是前往後台的 [ 外觀 ] -> [ 選單 ],開始進行導航選單的編輯。

選單名稱建議還是以英數字為主別帶有中文字,如果要某選單位於某主選單的下拉式清單之中的話,對該區塊往後拖移就可以了,設定完記得按儲存選單,然後在佈景主題位置選擇剛建立好的選單儲存就完成囉。

如果想更了解Menus的wp_nav_menu函數的話可以至官網的 Function Reference/wp nav menu 逛逛,因為本篇文章僅說明如何與現行的主題導航列相容~~