2010-10-23 35 views
6

如何檢查WordPress 3中是否存在帶有名稱的菜單,例如'topnavbar'?如何檢查是否存在具有特定名稱的菜單

+0

你所說的「菜單」究竟是什麼意思?後端菜單? – 2010-10-23 12:53:13

+0

我的意思是你可以在管理區域做出的菜單。我需要以編程方式檢查是否存在具有某個名稱的菜單,然後使用它如下所示:wp_nav_menu(array('menu'=>'navbar','depth'=>'1','walker'=> $ walker) ); – 2010-10-23 12:54:23

回答

4

如果你看看wp_nav_menu函數的代碼,它所做的第一件事情之一是使用wp_get_nav_menu_object函數獲取具有該名稱的菜單。此功能將返回菜單,如果不存在,則返回false

+0

這適用於菜單id ['menu_id']和菜單名稱['menu']。 – 2014-01-31 10:03:04

10

has_nav_menu()聽起來像是你要找的東西。 http://codex.wordpress.org/Function_Reference/has_nav_menu

+2

誤導性答案!它測試菜單**位置**,而不是菜單名稱/ ID。 – frnhr 2013-08-02 01:25:47

+5

誤導評論!它測試**如果菜單存在於指定的位置**。這個評論是誤導性的,因爲把我扔了一下。我認爲大多數人來這裏尋找has_nav_menu()*(我的意思是 - 爲什麼你真的想知道用戶命名菜單...)* 來自has_nav_menu():'@return bool是否位置有一個菜單。「 – Norris 2013-11-07 10:35:04

+0

」你爲什麼想知道?「部分原因在於提問者提出的問題,這應該就夠了。如果你不知道答案,你不應該通過質疑他的動機來回答。我想知道,因爲在我的當前網站上,客戶端應該可以控制某些子菜單(即,在管理員中創建菜單),並且有一些從自定義發佈子項生成的子菜單,因爲它們很多,子菜單條目應該與其發佈狀態相匹配。 – 2014-01-31 09:54:21

相關問題