NeGiMeMo.net

ねぎさんのメモ帳。日常・メモ・ときどきWordPress。

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

bell賞味期限切れコンテンツ

この記事は公開または最終更新から1263日くらい経過しています。
このメッセージが表示されている記事(特にプログラミング系)は情報が古くなっている可能性があるので注意して下さい。

 

簡単なダッシュボードウィジェットを作る

ダッシュボードはWordPressにログインした直後に表示されるページで,インストール直後ならばようこそメッセージや現在の状況なんかが表示されてますが,
ここにも自分でウィジェットを登録することが出来ます。

通常はあまり使わない場所かもしれませんが,SNSや投稿サイト的な使い方をしている場合はログインしたときに管理者からのメッセージを表示したりもできますね。
仕事で使うなら,ここからマニュアルページへのリンクを張ったり,会社からのおしらせを載せたり,もっと凝ったことをすなら,各クライアントに個別におしらせを出したりも出来そうですね。
あとはコンタクトフォームのようなものを埋め込んでお問い合せ窓口風にするのもいいかもしれません。
1人で運用するのでない場合は少し考えてみれば割と使い道はありそうですね。

コードもさほど長くないし覚えておいて損はないんじゃないでしょうか?

早速コードをもりもり書きます。といってももっともシンプルなものであれば10行くらいですが。

 my_dashboard_testと,my_dashboard_test_setupは自分の好きなように変更してください。

ここでは,wp_dashboard_setupにフックして,my_dashboard_test_setupを実行しています。
my_dashboard_test_setupの中では,wp_add_dashboard_widget という関数を実行しています。

wp_add_dashboard_widgetのパラメータは左から順に,ウィジェットを識別するためのID,ウィジェットのタイトル部分,ウィジェットの中身を表示する関数。

この例ではmy_dashboard_testというIDでWordPress Codexというタイトルのウィジェットにmy_dashboard_testという関数で生成した内容を表示するという意味になります。

IDはウィジェットを識別するのに使うので他と名前が被らないようにする必要があります。

最後に,表示する中身を生成する関数ですが,普通にPHPですので表示したい内容を echo すればOKですが,もっと融通を利かせる為に一旦ここだけPHPからはずしています。

一度 ?>タグでPHPから抜けてから,関数を閉じる直前でもう一度<?php として再開することで,中間部分はただのHTMLとして処理されるようになるので,
さらに自由度がましますね。いつものようにHTMLタグを書くだけでいいのですから。

こういう裏技じゃないけど,ちょっと「あれ?」って思うような使い方もテンプレートを作っていく中ではよくでてきますので覚えておくと何かと便利かもしれません。
特に自分でプラグインやテーマの設定ページみたいな管理パネルを拡張したくなってきたとき,威力を発揮します。 あ,いやこのエントリも管理画面(というかダッシュボード)の拡張記事か :P

もちろんPHPのまま続行すれば簡単に変数が扱えるとかいろんなメリットもありますが,テンプレートタグみたいに都度<?php echo $hogehoge; ?>みたいなかんじで書けばギリなんとかなりますし。ソースはちょい見にくくなりますが。

因みにトップの画像は実際にウチで動かした例です。
まぁダッシュボード上にCodex表示しても実際に作業するページはここじゃないし,横幅が狭いとリファレンスは読みにくいから,
こういう使い方はあまりしないかもしれませんけどね。

TAGS