管理画面にメモ欄を追加する方法
WordPressの管理画面(ダッシュボード)にちょっとしたメモを残せる欄があると便利です。
例えば作業メモや今後のタスクを簡単に書き留めておけば、ログインするたびに確認できます。
ただし、テーマによってはすでに「クイックドラフト」というメモ欄が最初から用意されています。
特に Lightning と Cocoon にはデフォルトでクイックドラフトが付いているため、これらのテーマでは新しいメモ欄を追加する必要はありません。
functions.php にコードを追加
子テーマの functions.php
に以下のコードを追加してください。
// 管理画面にメモ欄ウィジェットを追加(Lightning / Cocoon は除外)
function my_custom_dashboard_memo_widget() {
// 現在のテーマを取得
$theme = wp_get_theme();
$theme_name = $theme->get('Name');
// Lightning または Cocoon の場合は処理をスキップ
if ( in_array( $theme_name, array( 'Lightning', 'Cocoon' ) ) ) {
return;
}
// ウィジェットを追加
wp_add_dashboard_widget(
'my_memo_widget', // ウィジェットID
'メモ欄', // タイトル
'my_memo_widget_display' // 表示コールバック
);
}
add_action( 'wp_dashboard_setup', 'my_custom_dashboard_memo_widget' );
// メモ欄の表示(フォーム + nonce)
function my_memo_widget_display() {
$memo = get_option( 'my_dashboard_memo', '' );
echo '<form method="post">';
wp_nonce_field( 'my_dashboard_memo_action', 'my_dashboard_memo_nonce' );
echo '<textarea name="my_dashboard_memo" style="width:100%; height:150px;">' . esc_textarea( $memo ) . '</textarea>';
echo '<p><input type="submit" class="button button-primary" value="保存する"></p>';
echo '</form>';
}
// メモ欄の保存処理
function my_memo_widget_save() {
if ( isset($_POST['my_dashboard_memo']) ) {
if ( ! isset($_POST['my_dashboard_memo_nonce']) ) return;
if ( ! wp_verify_nonce( wp_unslash($_POST['my_dashboard_memo_nonce']), 'my_dashboard_memo_action' ) ) return;
if ( ! current_user_can( 'edit_posts' ) ) return;
$memo = sanitize_textarea_field( wp_unslash($_POST['my_dashboard_memo']) );
update_option( 'my_dashboard_memo', $memo );
}
}
add_action( 'admin_init', 'my_memo_widget_save' );
使い方
- 管理画面にログインすると「メモ欄」というウィジェットが追加されます
- テキストを入力して「保存する」ボタンを押すと内容が保存されます
- Lightning / Cocoon を使っている場合は追加されません(既にクイックドラフトがあるため)
クイックドラフトを消す
試しにデフォルトのクイックドラフトを消すことも可能です。
// 管理画面のクイックドラフトを非表示にする
add_action( 'wp_dashboard_setup', function() {
remove_meta_box( 'dashboard_quick_press', 'dashboard', 'side' ); // クイックドラフト
}, 20 );
まとめ
ダッシュボードにメモ欄を追加すると、管理作業の効率がアップします。
ちょっとした作業メモやリマインダーを書き込んで、日々の運用に役立ててみてください。