本篇文章更新時間:2020/01/29
如有資訊過時或語誤之處,歡迎使用 Contact 功能通知。
一介資男的 LINE 社群開站囉!歡迎入群聊聊~
如果本站內容對你有幫助,歡迎使用 BFX Pay 加密貨幣 或 新台幣 贊助支持。
安裝外掛通常都會補一個選單讓你知道在哪可以控制到他,但他放的點就可能不是你喜歡的位置了。
不論是位置也好,顯示文字也好,或是連結目標等,都是希望能控制到的地方。
如果是後台頂部選單 Admin Bar 的話,這時候就要找文件看一下 WP_Admin_Bar 物件的設計!
不難,主要方法如下:
function mxp_custom_admin_bar($admin_bar) {
$view_site = $admin_bar->get_node('view-site'); //取得選單節點
$view_site->href = get_option('home');
$view_site->title = "";
// $view_site->parent 選單的上層節點
// $view_site->id 選單唯一編號
// $view_site->group 選單是否為群組
// 該選單存在的話就是取代功能,不存在就是新增選單功能
$admin_bar->add_node($view_site);
}
add_action('admin_bar_menu', 'mxp_custom_admin_bar', 100);
關鍵是 admin_bar_menu
這個 Hook,可以在這裡面客製化對應的選單節點或是新增一個 Admin Bar 管理選單。
選單唯一編號是自行定義的參數,如果與其他編號重複就會變成是「修改/取代」該對應的選單節點。
上面範例程式碼就是舉例「造訪網站」的節點來處理,取得該節點後,看想要怎改描述或入口連結都沒問題囉~
內建定義這些節點的程式碼路徑為: wp-includes/admin-bar.php
千萬不要直接從這裡下手來改了。
案例舉例:
如果希望使用 WPML 或其他多國語言外掛的時候能夠不切換語系就顯示出全部語系的首頁怎麼處理?
答案就是去新增節點,然後記得設定唯一編號和 parent
設定為 site-name
就成功拉!(沒想寫 code 的意思)