【WordPress】functions.phpだけでできる!管理画面の便利カスタマイズ集

【WordPress】functions.phpだけでできる!管理画面の便利カスタマイズ集 WordPress

WordPressの管理画面は、functions.phpを活用することでより使いやすくカスタマイズできます。プラグインに頼らず、軽量でシンプルな運用が可能になる便利なコードを紹介します。

投稿一覧にカスタムフィールドの値を表示する

管理画面の投稿一覧に、特定のカスタムフィールドの値を表示できます。

// カラムを追加
function add_custom_column($columns) {
  $columns['custom_field'] = 'カスタム値';
  return $columns;
}
add_filter('manage_post_posts_columns', 'add_custom_column');

// 値を表示
function show_custom_column($column_name, $post_id) {
  if ($column_name == 'custom_field') {
    $value = get_post_meta($post_id, 'カスタムフィールド名', true);
    echo esc_html($value);
  }
}
add_action('manage_post_posts_custom_column', 'show_custom_column', 10, 2);

投稿画面に説明文を追加する

投稿画面のタイトルやカスタムフィールドの上に説明を表示できます。

function add_title_description() {
  echo '<p style="color: #666;">※タイトルには記事の主題を簡潔に入力してください。</p>';
}
add_action('edit_form_after_title', 'add_title_description');

管理画面のメニューを非表示にする(特定ユーザー向け)

権限に応じて、不要なメニューを非表示にできます。

function remove_admin_menus() {
  if (!current_user_can('administrator')) {
    remove_menu_page('edit-comments.php'); // コメント
    remove_menu_page('tools.php'); // ツール
  }
}
add_action('admin_menu', 'remove_admin_menus');

管理者だけにカスタム通知を表示

管理者にだけメッセージを表示して、運営上の注意を促すことができます。

function admin_custom_notice() {
  if (current_user_can('administrator')) {
    echo '<div class="notice notice-info is-dismissible"><p>バックアップは週1回以上実施してください。</p></div>';
  }
}
add_action('admin_notices', 'admin_custom_notice');

ダッシュボードの不要なウィジェットを削除

初期表示されるウィジェットを非表示にして、管理画面をスッキリさせましょう。

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

まとめ

functions.phpを活用することで、WordPressの管理画面はより快適にカスタマイズできます。特別なプラグインを使わず、軽量かつシンプルに制御できる点が大きなメリットです。
ぜひ、あなたの運用スタイルに合わせて取り入れてみてください。