教文館の社内ナレッジベースです。

以前get_currentuserinfo();を使って、ダッシュボードウィジェットやらメニューを非表示にしましたが、WordPressに怒られました。

エラー内容. Notice: get_currentuserinfo の使用はバージョン 4.5 から非推奨になっています! 代わりに wp_get_current_user() を使ってください。

だということです。

そこでそっくりそのまま書き換えます。

// ダッシュボードウィジェット非表示。ただし、吉國(IDは1)にだけは必要なので表示
function kbk_remove_dashboard_widgets() {
$user = wp_get_current_user();
if($user -> get('user_login')!="kbkadmin"){ //ログインユーザーが管理者kbkadminではない場合
global $wp_meta_boxes;
unset($wp_meta_boxes['dashboard']['normal']['core']['dashboard_recent_comments']); // 最近のコメント
unset($wp_meta_boxes['dashboard']['normal']['core']['dashboard_incoming_links']); // 被リンク
unset($wp_meta_boxes['dashboard']['normal']['core']['dashboard_plugins']); // プラグイン
unset($wp_meta_boxes['dashboard']['side']['core']['dashboard_quick_press']); // クイック投稿
unset($wp_meta_boxes['dashboard']['side']['core']['dashboard_recent_drafts']); // 最近の下書き
unset($wp_meta_boxes['dashboard']['side']['core']['dashboard_primary']); // WordPressブログ
unset($wp_meta_boxes['dashboard']['side']['core']['dashboard_secondary']); // WordPressフォーラム
}
}
add_action('wp_dashboard_setup', 'kbk_remove_dashboard_widgets');

// メニューを非表示にする
function kbk_remove_menus () {
$user = wp_get_current_user();
if($user -> get('user_login')!="kbkadmin"){ //ログインユーザーが管理者kbkadminではない場合
global $submenu;
remove_menu_page('wpcf7'); //Contact Form 7
remove_menu_page('responsive-menu'); //responsive-menu
remove_menu_page('wp-tweets-pro'); //ツイッター
remove_menu_page('aiowpsec'); // AIO WP Security & Firewall Plugin
remove_menu_page('wp-dbmanager/database-manager.php'); //Database
remove_menu_page('edit.php?post_type=wcs_slide'); // Shortcodes by Angie Makesのslideshow
remove_menu_page('edit.php?post_type=wcs_collage'); // Shortcodes by Angie MakesのCollage
remove_menu_page('edit.php?post_type=dlm_download'); // ダウンロード
remove_menu_page('edit.php?post_type=dsn'); // ダッシュボードメモ
remove_menu_page('edit.php?post_type=post_type_manage'); // "Custom Post Type Setting"
remove_menu_page('content-views'); // "pt_view"
remove_menu_page('maintenance'); // "maintenance"
remove_menu_page('admin.php?page=all-in-one-seo-pack/aioseop_class.php'); // "all-in-one-seo-pack"何故か駄目
remove_menu_page('toplevel_page_post_lists_view_custom'); // "Post lists view custom"何故か駄目
remove_menu_page( 'jetpack' ); // "jetpack"何故か駄目
global $menu;
unset($menu[15]); // リンク
unset($menu[25]); // コメント
unset($menu[60]); // テーマ
unset($menu[65]); // プラグイン
unset($menu[70]); // プロフィール
unset($menu[75]); // ツール
unset($menu[80]); // 設定
unset($menu[90]); // メニューの線3
}
}
add_action('admin_menu', 'kbk_remove_menus');

下はもともとの記述。

// ダッシュボードウィジェット非表示
function example_remove_dashboard_widgets() {
global $current_user;
get_currentuserinfo();
if ($current_user->ID != '1' ) { //ユーザーkbkadmin以外のユーザーの場合ウィジェットをunsetする
global $wp_meta_boxes;
unset($wp_meta_boxes['dashboard']['normal']['core']['dashboard_recent_comments']); // 最近のコメント
unset($wp_meta_boxes['dashboard']['normal']['core']['dashboard_incoming_links']); // 被リンク
..................(略)
}
}
add_action('wp_dashboard_setup', 'example_remove_dashboard_widgets');
// メニューを非表示にする
function remove_menus () {
global $current_user;
get_currentuserinfo();
if ($current_user->ID != '1' ) { //ユーザーkbkadmin以外のユーザーの場合メニューをunsetする
global $submenu;
remove_menu_page('wpcf7'); //Contact Form 7
remove_menu_page('responsive-menu'); //responsive-menu
................(略)
global $menu;
unset($menu[15]); // リンク
unset($menu[25]); // コメント
.....................(略)
}
}
add_action('admin_menu', 'remove_menus');

参考

<?php remove_menu_page( $menu_slug ) ?> //ワードプレスのメニューを取り除く関数

パラメータ

$menu_slug
(文字列) (必須) メニューのスラッグ (典型的には、メニューアイテムの PHP スクリプト名。例: edit-comments.php)

初期値: なし