Nasconde i vari elementi del backend in base al nickname dell'utente
<?php
//stampa l'array completa del menu. Per nascondere la pagine prendere l'elemento [2] di ciascuna voce
add_action( 'admin_init', 'wpse_136058_debug_admin_menu' );
function wpse_136058_debug_admin_menu() {
echo '<pre>' . print_r( $GLOBALS[ 'menu' ], TRUE) . '</pre>';
}
//così nascondo una o più voci di menù per gli utenti che non sono amministratori
//rimuovo elementi nel menù in bakend
add_action( 'admin_menu', 'remove_menus' , 999);
function remove_menus(){
global $current_user;
if ($current_user->user_login!='admin'){
remove_menu_page( 'index.php' ); //Dashboard
remove_menu_page( 'edit.php' ); //Posts
remove_menu_page( 'upload.php' ); //Media
remove_menu_page( 'edit.php?post_type=page' ); //Pages
remove_menu_page( 'edit-comments.php' ); //Comments
remove_menu_page( 'themes.php' ); //Appearance
remove_menu_page( 'plugins.php' ); //Plugins
remove_menu_page( 'users.php' ); //Users
remove_menu_page( 'tools.php' ); //Tools
remove_menu_page( 'options-general.php' ); //Settings
remove_menu_page( 'edit.php?post_type=acf-field-group' );//ACF
remove_menu_page( 'duplicator' );
remove_menu_page( 'bulk-delete-posts' );
} else {
// qui nascondo per l'admin
}
}
<?php
//rimuove dalla bacheca tutti gli elementi in dashboard
add_action( 'admin_init', 'remove_dashboard_meta' );
function remove_dashboard_meta() {
remove_action('welcome_panel', 'wp_welcome_panel');
remove_meta_box( 'dashboard_incoming_links', 'dashboard', 'normal' );
remove_meta_box( 'dashboard_plugins', 'dashboard', 'normal' );
remove_meta_box( 'dashboard_primary', 'dashboard', 'side' );
remove_meta_box( 'dashboard_secondary', 'dashboard', 'normal' );
remove_meta_box( 'dashboard_quick_press', 'dashboard', 'side' );
remove_meta_box( 'dashboard_recent_drafts', 'dashboard', 'side' );
remove_meta_box( 'dashboard_recent_comments', 'dashboard', 'normal' );
remove_meta_box( 'dashboard_right_now', 'dashboard', 'normal' );
remove_meta_box( 'dashboard_activity', 'dashboard', 'normal');//since 3.8
}