WordPress: una Dashboard (Bacheca) diversa a seconda dei ruoli utente

WordPress: una Dashboard (Bacheca) diversa a seconda dei ruoli utente

WordPress ci permette anche di stabilire quali widget e metabox debbano comparire nella Dashboard (Bacheca). Ma come possiamo presentare una Dashboard diversa a seconda dei ruoli utente?

Possiamo utilizzare la action wp_dashboard_setup in questo modo:


function my_dashboard_setup() {
	global $wp_meta_boxes;
	global $current_user;
	
	$user_role = $current_user->roles[0];
	
	if( $user_role == 'author' || $user_role == 'subscriber' ) {

		unset( $wp_meta_boxes['dashboard']['side']['core']['dashboard_quick_press'] );
		unset( $wp_meta_boxes['dashboard']['normal']['core']['dashboard_incoming_links'] );
		unset( $wp_meta_boxes['dashboard']['normal']['core']['dashboard_right_now'] );
		unset( $wp_meta_boxes['dashboard']['normal']['core']['dashboard_plugins'] );
		unset( $wp_meta_boxes['dashboard']['normal']['core']['dashboard_recent_drafts'] );
		unset( $wp_meta_boxes['dashboard']['normal']['core']['dashboard_recent_comments'] );
		unset( $wp_meta_boxes['dashboard']['normal']['core']['dashboard_activity'] );
		unset( $wp_meta_boxes['dashboard']['side']['core']['dashboard_primary'] );
		unset( $wp_meta_boxes['dashboard']['side']['core']['dashboard_secondary'] );
		
	}

}

add_action( 'wp_dashboard_setup', 'my_dashboard_setup' );

In questo caso se gli utenti sono autori o sottoscrittori la Dashboard viene privata di ogni contenuto.

Torna su