There are many ways to customize the WordPress Dashboard.
In default WordPress Installation WP Dashboard have a brief view of the main sections of your site in terms of meta boxes, they also provide granular & graphical data on everything from recent comments & plugin updates to incoming links as well as WordPress latest news.
There are many of dashboard widgets and plugins available in the WordPress Plugin Directory that you can use to transform your Dashboard into nice customized dashboard with your own text/images and links, or even disable it completely.
The details of new plugins, WordPress News & Blog Updates , all these sections are added using the wp_dashboard_setup() hook and we can used it to remove them. You can use below code in your theme`s functions.php file to get rid of them.
Removing Default Widgets from Dashboard
[code]
// REMOVE META BOXES FROM WORDPRESS DASHBOARD FOR ALL USERS
// disable default dashboard widgets
function remove_dashboard_widgets() {
global $wp_meta_boxes;
unset($wp_meta_boxes[‘dashboard’][‘normal’][‘core’][‘dashboard_right_now’]);
unset($wp_meta_boxes[‘dashboard’][‘normal’][‘core’][‘dashboard_recent_comments’]);
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’]);
unset($wp_meta_boxes[‘dashboard’][‘side’][‘core’][‘dashboard_secondary’]);
unset($wp_meta_boxes[‘dashboard’][‘normal’][‘core’][‘dashboard_incoming_links’]);
unset($wp_meta_boxes[‘dashboard’][‘normal’][‘core’][‘dashboard_plugins’]);
}
add_action(‘wp_dashboard_setup’, ‘remove_dashboard_widgets’);
[/code]
Or you can use this WordPress API functions to do the same
[code]
// disable default dashboard widgets
function disable_default_dashboard_widgets() {
remove_meta_box(‘dashboard_right_now’, ‘dashboard’, ‘core’);
remove_meta_box(‘dashboard_recent_comments’, ‘dashboard’, ‘core’);
remove_meta_box(‘dashboard_incoming_links’, ‘dashboard’, ‘core’);
remove_meta_box(‘dashboard_plugins’, ‘dashboard’, ‘core’);
remove_meta_box(‘dashboard_quick_press’, ‘dashboard’, ‘core’);
remove_meta_box(‘dashboard_recent_drafts’, ‘dashboard’, ‘core’);
remove_meta_box(‘dashboard_primary’, ‘dashboard’, ‘core’);
remove_meta_box(‘dashboard_secondary’, ‘dashboard’, ‘core’);
}
add_action(‘admin_menu’, ‘disable_default_dashboard_widgets’);
[/code]
Create your own Dashboard widget
Here the first function include the content of the custom widget. The second function shows the output of the first function into a widget and lastly , we call the second function when the Dashboard is set up.
[code]
// custom dashboard widget code
function my_dashboard_widget() {
echo "<p>You can add your own text or images here.</p>";
}
function add_mycustom_dashboard_widget() {
wp_add_dashboard_widget(‘my_dashboard_widget’, ‘Add your own text here’, ‘my_dashboard_widget’);
}
add_action(‘wp_dashboard_setup’, ‘add_mycustom_dashboard_widget’);
[/code]
Once you found these things work, it’s just a matter of adding few lines of functionality and you could add a list of recent subscribers, import feeds from other blogs, or display images/content, post/pages, or anything else you want on Dashboard.