WordPressの案件では、管理画面のヘッダーにあるコメントとか、更新とかがいらない場合がある。functions.php
でいらない部分は自由に消す事ができる。
function.php
//更新・コメントの削除
function remove_admin_bar_menu() {
global $wp_admin_bar;
$wp_admin_bar->remove_menu('updates'); //更新
$wp_admin_bar->remove_menu('comments'); //コメント
$wp_admin_bar->remove_menu('new-content'); //新規追加ボタン
$wp_admin_bar->remove_node('view-site'); //サイトを表示リンク
$wp_admin_bar->remove_node('site-name'); //左上のサイト名
}
add_action( 'admin_bar_menu', 'remove_admin_bar_menu', 99 );
ちなみに対象の値が分からない場合はvar_dump()
をすると表示されるので分かる。
function.php
function remove_admin_bar_menu() {
var_dump($wp_admin_bar);
}
add_action( 'admin_bar_menu', 'remove_admin_bar_menu', 99 );
独自に新しく追加することもできる。
function.php
//ヘッダーにメニューの追加
function header_add(){
global $wp_admin_bar;
$wp_admin_bar->add_menu( array(
'id' => '任意のid名',
'title' => '表示するタイトル',
'href' => admin_url( 'リンク先(/wp-admin/以下のurlを記入)')
));
}
add_action( 'wp_before_admin_bar_render', 'header_add', 1000 );
よく使う使い方
あらかじめ固定ページに更新用ページを新規で作成し、スラッグ名を「custom-update」に設定する。
次に、functions.phpに下記を記述する。
add_menu()
のhrefにスラッグ名が「custom-update」のページをのIDを指定する。こうすることで、サイトの引越しや更新用ページを一度削除してしまって、再度作成した際などにIDが変わってしまっても問題なく動作する。
function.php
//ヘッダーにメニューの追加
function header_add(){
global $wp_admin_bar;
$get_page_id = get_page_by_path("custom-update");
$get_page_id = $get_page_id->ID;
$wp_admin_bar->add_menu( array(
'id' => 'custom_update',
'title' => '更新用',
'href' => admin_url('post.php?post='.$get_page_id.'&action=edit')
));
}
add_action( 'wp_before_admin_bar_render', 'header_add', 1000 );