管理ツールバーにメニューを追加

2018年10月3日

WordPressの管理画面の上部には管理バーがあります。
デフォルトでは機能は最低限で至ってシンプルです。

admin-bar01

テーマ「Simplicity」をインストールするとこのようなメニューが追加されます。

admin-bar02

このままでもいいのですが、「投稿一覧」を頻繁に使うので、単一のメニューを追加してみます。
以下をfunction.phpに追加します。
※必ずfunction.phpのバックアップを取ってから実行してください

// 単一メニュー:投稿一覧を追加
function admin_bar_all_posts() {
 global $wp_admin_bar;
 $wp_admin_bar->add_menu(array(
 'id' => 'admin_bar_all_posts_menu',
 'title' => __('投稿一覧'),
 'href'   => home_url('/wp-admin/edit.php'),
 'meta' => array ()
 ));
 }
add_action('wp_before_admin_bar_render', 'admin_bar_all_posts');

投稿一覧が追加されました。

admin-bar03

 

固定ページ一覧も追加してみます。

// 単一メニュー:固定ページ一覧を追加
function admin_bar_all_pages() {
 global $wp_admin_bar;
 $wp_admin_bar->add_menu(array(
 'id' => 'admin_bar_all_pages_menu',
 'title' => __('固定ページ一覧'),
 'href'   => home_url('/wp-admin/edit.php?post_type=page'),
 'meta' => array ()
 ));
 }
add_action('wp_before_admin_bar_render', 'admin_bar_all_pages');

固定ページ一覧が追加されました。

admin-bar04

 

ドロップダウンメニューも追加してみます。

// ドロップダウンメニューを追加
function admin_bar_drop_down() {
 global $wp_admin_bar;
 $wp_admin_bar->add_menu(array(
 'id' => 'admin_bar_drop_down_menu',
 'title' => __('管理メニュー2'),
 'meta' => array ()
  ));
  $wp_admin_bar->add_menu(array(
      'parent' => 'admin_bar_drop_down_menu',
      'id'     => 'admin_bar_drop_down_menu-dashboard',
      'meta'   => array(),
      'title'  => 'ダッシュボード',
      'href'   => home_url('/wp-admin/')
  ));
  $wp_admin_bar->add_menu(array(
      'parent' => 'admin_bar_drop_down_menu',
      'id'     => 'admin_bar_drop_down_menu-singles',
      'meta'   => array(),
      'title'  => '投稿一覧',
      'href'   => home_url('/wp-admin/edit.php')
  ));
  $wp_admin_bar->add_menu(array(
      'parent' => 'admin_bar_drop_down_menu',
      'id'     => 'admin_bar_drop_down_menu-pages',
      'meta'   => array(),
      'title'  => '固定ページ一覧',
      'href'   => home_url('/wp-admin/edit.php?post_type=page')
  ));
  $wp_admin_bar->add_menu(array(
      'parent' => 'admin_bar_drop_down_menu',
      'id'     => 'admin_bar_drop_down_menu-medias',
      'meta'   => array(),
      'title'  => 'メディア一覧',
      'href'   => home_url('/wp-admin/upload.php')
  ));
  $wp_admin_bar->add_menu(array(
      'parent' => 'admin_bar_drop_down_menu',
      'id'     => 'admin_bar_drop_down_menu-themes',
      'meta'   => array(),
      'title'  => 'テーマ',
      'href'   => home_url('/wp-admin/themes.php')
  ));
  $wp_admin_bar->add_menu(array(
      'parent' => 'admin_bar_drop_down_menu',
      'id'     => 'admin_bar_drop_down_menu-customize',
      'meta'   => array(),
      'title'  => 'カスタマイズ',
      'href'   => home_url('/wp-admin/customize.php?return=%2Fwordpress%2Fwp-admin%2Fthemes.php')
  ));
  $wp_admin_bar->add_menu(array(
      'parent' => 'admin_bar_drop_down_menu',
      'id'     => 'admin_bar_drop_down_menu-widget',
      'meta'   => array(),
      'title'  => 'ウィジェット',
      'href'   => home_url('/wp-admin/widgets.php')
  ));
  $wp_admin_bar->add_menu(array(
      'parent' => 'admin_bar_drop_down_menu',
      'id'     => 'admin_bar_drop_down_menu-nav-menus',
      'meta'   => array(),
      'title'  => 'メニュー',
      'href'   => home_url('/wp-admin/nav-menus.php')
  ));
  $wp_admin_bar->add_menu(array(
      'parent' => 'admin_bar_drop_down_menu',
      'id'     => 'admin_bar_drop_down_menu-theme-editor',
      'meta'   => array(),
      'title'  => 'テーマの編集',
      'href'   => home_url('/wp-admin/theme-editor.php')
  ));
  $wp_admin_bar->add_menu(array(
      'parent' => 'admin_bar_drop_down_menu',
      'id'     => 'admin_bar_drop_down_menu-plugins',
      'meta'   => array(),
      'title'  => 'プラグイン一覧',
      'href'   => home_url('/wp-admin/plugins.php')
  ));
}
add_action('wp_before_admin_bar_render', 'admin_bar_drop_down');

 

ドロップダウンメニューが追加されました。

admin-bar05