WordPress のダッシュボードに独自のウィジェットを足す:wp_add_dashboard_widget(日時・サポートの連絡先)

概要説明

WordPress の管理画面のダッシュボードに、自分用の枠(ウィジェット)を足す functions.php のコード。今の日時を日本時間で出す例と、管理者だけにサポートの連絡先を出す例。PHP の date() だと時刻がずれる理由も、作業環境で確かめた結果つきで。

ダッシュボードに枠を足すには、wp_dashboard_setup のフックで wp_add_dashboard_widget を呼びます。

functions.php
/**
 * ダッシュボードに「今の日時」の枠を足す
 */
add_action( 'wp_dashboard_setup', function () {
	wp_add_dashboard_widget( 'my_dashboard_now', '今の日時', function () {
		// wp_date() は、設定 → 一般 のタイムゾーンで日時を出す
		echo '<p>' . esc_html( wp_date( 'Y年n月j日 H:i' ) ) . '</p>';
	} );
} );
書き方 役目
wp_add_dashboard_widget( id, 題名, 中身を出す関数 ) ダッシュボードに枠を足す。id は枠ごとに別の名前にする
wp_date() サイトの設定のタイムゾーン(日本なら東京)で日時を出す
esc_html() 出す文字を、HTML として崩れない形にする

WordPress の中では、PHP の date() は世界標準時(UTC)で動きます。日本時間とは 9 時間ずれるので、日時は wp_date() で出します。

ダッシュボードでの見え方

WordPress のダッシュボードに独自のウィジェットを足す:wp_add_dashboard_widget(日時・サポートの連絡先)

中身を出す関数の中に、好きな HTML を書けば、その内容が枠に出ます。

確かめた結果

このサイトの作業環境(WordPress 7.1・タイムゾーンは東京)で試しました。

試したこと 結果
同じときに date() と wp_date() で時刻を出す date() は 05:00、wp_date() は 14:00(9 時間ずれた)
管理者でダッシュボードを作る 「今の日時」と「ホームページのサポート」の 2 つが出た
権限のない人でダッシュボードを作る 「今の日時」だけが出た(サポートは出ない)

使い道の例

  • 制作会社やサポートの連絡先を出して、困ったときにすぐ連絡してもらえるようにする
  • このサイトだけの操作の手順(記事の書き方・画像の大きさの決まりなど)を書いておく
  • よく使う外部のページ(アクセス解析・サーバーの管理画面など)へのリンクをまとめる

例:ダッシュボードにサポートの連絡先を出す

functions.php
/**
 * ダッシュボードに「ホームページのサポート」の枠を足す(管理者だけに出す)
 */
add_action( 'wp_dashboard_setup', function () {
	if ( ! current_user_can( 'manage_options' ) ) {
		return;
	}
	wp_add_dashboard_widget( 'my_dashboard_support', 'ホームページのサポート', function () {
		echo '<p>お困りのときは、こちらにご連絡ください。</p>';
		echo '<ul>';
		echo '<li>担当:◯◯ ◯◯</li>';
		echo '<li>電話:xxx-xxxx-xxxx</li>';
		echo '<li>メール:info@example.com</li>';
		echo '</ul>';
	} );
} );

current_user_can( ‘manage_options’ ) で、管理者だけに出すようにしています。投稿者など、ほかの人にも見せたいときは、この 3 行を消します。

前はこの記事で、2 つの例が同じ id(dashboard_widget)を使っていました。両方を足すと、あとの枠で前の枠が上書きされてしまうので、今は別の id にしています。

WordPress のダッシュボードに独自のウィジェットを足す:wp_add_dashboard_widget(日時・サポートの連絡先)

参考(WordPress の公式の説明)

関連機能

  1. ダッシュボードに自由に使えるメモ用エリアを追加

  2. WordPress カテゴリーの並び順を変更できるプラグイン Custom Taxonomy Order

  3. WordPress のリビジョンの数を減らす・止める(wp-config.php と投稿タイプごとの設定・自動保存の間隔)

サイドバー

よく使うカスタマイズ

最近の記事

Profile

PAGE TOP