WordPress 的儀表盤 (Dashboard),也就是登陸後台後第一個看見的頁面,有人説這個界面很累贅,顯示了很多沒人感興趣的信息,耗費內存,例如 WordPress China 博客新聞 (如果你裝的是中文版) 、其它 WordPress 新聞等 Widget 。沒關係,WordPress 的設計者給我們提供了多種方式來打造自己的個性化 WordPress 儀表盤

概述

1. 通過配置 Widget 選項修改後台顯示的信息;

2. 通過程序移除不需要的 Widget,添加自己喜歡的 Widget 。

配置後台 Widget

就以 「其他 WordPress 新聞 Widget」 為例,這個小工具其實是一個 RSS 閲讀器,通過讀取 http://planet.wordpress.org 的 feed 源向用户顯示該網站最近更新的文章。説到這,答案很簡單了。不想看這個新聞源,換一個就好。

鼠標移動到標題欄最右側,會出現一個向下的箭頭,箭頭右側有一個鏈接按鈕」 配置 「。

點擊箭頭可以隱藏或者顯示小工具的內容,點擊配置就可以更改小工具的設置。

WordPress儀表盤小工具(Dashboard Widget)圖解

修改 「其它 WORDPRESS 新」WIDGET 的設置

將 RSS 地址更改成自己想訂閲的網站,並輸入新的標題,就可以和 WordPress 新聞説再見了。

配置其它WordPress新聞Widget

例如,我將地址修改為自己網站的 rss 地址:http://www.solagirl.net/feed

標題更改為:Sola 博客

保存以後效果如下

在WordPress儀表盤顯示Sola博客的訂閲

用同樣的方法定製其它 Widget,你的後台就不在是 WordPress 的天下,而是你自己的空間。

隱藏後台 Widget

如果想隱藏 Widget,也很簡單,有兩種方法。

方法一:萬能的顯示選項 (Screen Options)

不管在後台任何地方,如果你注意一下屏幕右上角,90% 的概率你會發現一個東西叫做 「屏幕選項 (ScreeOptions)」 。

顯示選項
點擊箭頭打開顯示選項,在儀表盤界面 (登陸 WordPress 首先看到的界面),你將看到如下圖所示的選項

通過WordPress儀表盤的顯示選項顯示/隱藏Widget

這裏列出當前頁面所有可用的 Widget,無論是否顯示,打上勾的就會顯示出來,不打鈎的就是隱藏的。

隱藏不等於沒有,例如選擇隱藏 WordPress China 博客,這個 Widget 從屏幕上消失了,如果你查看源代碼,會發現這個東西還是存在的,只是 css 的 display 屬性設置為 none 。

方法二:用程序隱藏 Widget

正如方法一結尾所説,從屏幕選項中去除只是表面上隱藏了,還是會佔用網速、內存。如果想徹底移除,就用程序來做。方法如下:

打開當前主題的 functions.php,在文件末尾加上一段代碼,這段代碼用移除鈎子的方式去掉 widget

下面是代碼

function remove_dashboard_widgets() {
    global $wp_meta_boxes;
    unset($wp_meta_boxes['dashboard']['side']['core']['dashboard_quick_press']);    //快速發佈
    unset($wp_meta_boxes['dashboard']['side']['core']['dashboard_primary']);    //WordPress China 博客
    unset($wp_meta_boxes['dashboard']['side']['core']['dashboard_secondary']);  //其它 WordPress 新聞
    unset($wp_meta_boxes['dashboard']['side']['core']['dashboard_recent_drafts']);  //近期草稿
    unset($wp_meta_boxes['dashboard']['normal']['core']['dashboard_incoming_links']);//鏈入鏈接
    unset($wp_meta_boxes['dashboard']['normal']['core']['dashboard_right_now']);     //概況
    unset($wp_meta_boxes['dashboard']['normal']['core']['dashboard_plugins']);   //插件
    unset($wp_meta_boxes['dashboard']['normal']['core']['dashboard_recent_comments']);//近期評論
}
add_action('wp_dashboard_setup', 'remove_dashboard_widgets' );

 

每一行 unset() 都是移除一個 Widget,具體是什麼看代碼後面的註釋,也可以參考下面的圖片説明,每個 Widget 的 ID 在代碼中的位置如下所示

unset($wp_meta_boxes[『dashboard』][『side』][『core』]['widget ID']);

Widget ID

Widget 的 HTML 結構(通過 Firebug 獲得)

WordPress儀表盤Widget的HTML結構

重排 Widgets

後台的 Widget 和前台的一樣,都可以通過拖拽的方式重新排列順序。

添加自定義後台 Widget

在當前主題的 functions.php 中加入註冊 Widget 的代碼,主要用到了 wp_add_dashboard_widget 鈎子,代碼如下:

function example_dashboard_widget_function() {
    // 顯示任何你想顯示的內容
    echo "Hello World, I'm a great Dashboard Widget";
}
// 創建鈎子函數
function example_add_dashboard_widgets() {
    wp_add_dashboard_widget('example_dashboard_widget', 'Example Dashboard Widget', 'example_dashboard_widget_function');
}
// 將鈎子函數掛到 wp_dashboard_setup 鈎子上,註冊新的 Widget
add_action('wp_dashboard_setup', 'example_add_dashboard_widgets' );

添加幫助信息

在文章/頁面的新建或編輯頁面添加幫助信息 (位於結尾)

add_action( 'admin_head-post.php', 'sola0922_add_help' );
add_action( 'admin_head-post-new.php', 'sola0922_add_help' );
function sola0922_add_help()
{
    get_current_screen()->add_help_tab( array(
        'id'        => 'my-help-tab',
        'title'     => __( 'My Title' ),
        'content'   => __( '<h5>Title</h5><p>This tab is below the built in tab.</p>' )
    ) );
}

添加新的幫助選項卡

在文章/頁面的新建或編輯頁面添加幫助信息 (位於開頭)

add_action('load-page-new.php','add_custom_help_page');
add_action('load-page.php','add_custom_help_page');
function add_custom_help_page() {
   get_current_screen()->add_help_tab( array(
        'id'        => 'my-help-tab',
        'title'     => __( 'My Title' ),
        'content'   => __( '<h5>Title</h5><p>This tab is below the built in tab.</p>' )
    ) );
}

添加幫助信息