WordPressのダッシュボードから不要な項目を非表示にする方法

未分類

WordPressのダッシュボードには、「サイトヘルスステータス」や「クイックドラフト」「WordPressイベントとニュース」など、さまざまな情報が表示されています。

便利なものもありますが、使わない項目が多いと管理画面がごちゃごちゃしてしまいます。

特に、クライアントにWordPressサイトを納品する場合は、

「この項目は触らなくてもいいのに……」
「必要な情報だけ表示して、もう少しシンプルにしたい」

と思うこともあるのではないでしょうか。

WordPressのダッシュボードに表示される項目を減らす方法は、大きく分けて2つあります。

  • 自分の画面だけ変更する → 「表示オプション」から非表示にする
  • 他のユーザーの画面も変更する → functions.phpで不要な項目を非表示にする

それぞれ用途が異なるので、順番に紹介します。

自分のダッシュボードだけ変更する方法

自分が使っているWordPressのダッシュボードを整理したいだけであれば、「表示オプション」から簡単に変更できます。

WordPressの管理画面から「ダッシュボード」を開き、画面右上にある「表示オプション」をクリックします。

すると、ダッシュボードに表示する項目の一覧が表示されます。

不要な項目のチェックを外すと、その項目がダッシュボードから非表示になります。

たとえば、

  • サイトヘルスステータス
  • 概要
  • アクティビティ
  • クイックドラフト
  • WordPressイベントとニュース

などを必要に応じて非表示にできます。

「表示オプション」の設定はユーザーごと

注意したいのが、「表示オプション」で変更した内容は、そのユーザーに対してのみ反映されるという点です。

たとえば制作者側のアカウントで「WordPressイベントとニュース」を非表示にしても、別のユーザーでログインすると、そのユーザーのダッシュボードには通常どおり表示されます。

そのため、

「自分の管理画面を見やすくしたい」

という場合は表示オプションだけで十分ですが、

「クライアントに納品したときも、最初から不要な項目を表示したくない」

という場合には、別の方法が必要です。

他のユーザーのダッシュボードからも非表示にする方法

ダッシュボードの不要な項目を初期状態から表示させたくない場合は、functions.phpにコードを記載して非表示にできます。

たとえば、以下のように記載します。

function remove_dashboard_widgets() {
 remove_meta_box( 'dashboard_quick_press', 'dashboard', 'side' ); 
 remove_meta_box( 'dashboard_primary', 'dashboard', 'side' );
 }
 add_action( 'wp_dashboard_setup', 'remove_dashboard_widgets' );

この例では、

  • クイックドラフト
  • WordPressイベントとニュース

をダッシュボードから非表示にしています。

必要に応じて、非表示にする項目を追加・変更できます。

よく使われるダッシュボード項目

WordPress標準のダッシュボード項目には、それぞれIDが設定されています。

代表的なものは以下です。

項目ID
サイトヘルスステータスdashboard_site_health
概要dashboard_right_now
アクティビティdashboard_activity
クイックドラフトdashboard_quick_press
WordPressイベントとニュースdashboard_primary

たとえば「サイトヘルスステータス」も非表示にしたい場合は、先ほどの関数内に以下を追加します。

remove_meta_box( 'dashboard_site_health', 'dashboard', 'normal' );

権限によって表示を変えることもできる

functions.phpを使う場合は、すべてのユーザーから一律で非表示にするだけでなく、ユーザーの権限によって表示を変えることもできます。

たとえば、

「管理者には表示するけれど、クライアント用のユーザーには表示しない」

といった設定も可能です。

例)編集者のダッシューボードのみ不要なウィジェットを削除

/**
 * 編集者のダッシュボードから不要なウィジェットを削除
 */
function custom_editor_dashboard_widgets() {

    // 管理者には適用しない
    if ( current_user_can( 'manage_options' ) ) {
        return;
    }

    // WordPress標準
    remove_meta_box( 'dashboard_site_health', 'dashboard', 'normal' );
    remove_meta_box( 'dashboard_quick_press', 'dashboard', 'side' );
    remove_meta_box( 'dashboard_primary', 'dashboard', 'side' );
    remove_meta_box( 'dashboard_right_now', 'dashboard', 'normal' );
    remove_meta_box( 'dashboard_activity', 'dashboard', 'normal' );
}
add_action( 'wp_dashboard_setup', 'custom_editor_dashboard_widgets', 999 );

WordPressサイトを自分だけで管理する場合にはあまり必要ありませんが、クライアントワークでは便利な方法です。

ただし、管理画面の項目を非表示にすることと、その機能を使えなくすることは別です。

非表示にしただけではユーザー権限そのものが変更されるわけではないため、操作できる機能自体を制限したい場合は、ユーザー権限についても別途設定する必要があります。

functions.phpを編集するときの注意点

functions.phpにコードを追加する場合は、記述ミスによってエラーが発生する可能性があります。

また、使用しているテーマのfunctions.phpを直接編集すると、テーマを変更したりアップデートしたりした際にコードが消えてしまうことがあります。

継続して使用する設定であれば、子テーマのfunctions.phpやサイト専用のプラグインなどに記述しておくと安心です。

まとめ

WordPressのダッシュボードを整理する方法は、誰の画面を変更したいかによって使い分けると分かりやすいです。

自分の画面だけスッキリさせたい場合は、「表示オプション」から不要な項目のチェックを外すだけでOKです。

一方、クライアントに納品するサイトなどで、他のユーザーにも不要な項目を最初から表示したくない場合は、functions.phpでダッシュボードウィジェットを非表示にする方法が向いています。

管理画面に必要な情報だけを残しておくと、見た目がスッキリするだけでなく、WordPressに慣れていない人にとっても操作しやすい管理画面になります。