WordPress Hide Dashboard Plugin
This Code Is No Longer Maintained!
In the course of setting up WordPress on DeepWave, I wanted a way where subscribers and editors/writers would not need to see the Dashboard in the Admin Control Panel. I noticed a number of people had suggested various hacks and changes in WordPress code to make this happen. But as we all know, we shouldn’t hack code because it would be a pain to upgrade. So I decided to take the various methods outlined on the net and make a small WordPress plugin that would do the trick. I therefore present the Hide Dashboard plugin!
Please bear with me as PHP is not one of my regular programming languages, and this is my first WordPress plugin after all, so if there are any bugs or problems, do let me know. Aside from that, enjoy!
To see this plugin in action, just register and login to this site. Alternatively, here are some screenshots:
These are images showing the effect of the Hide Dashboard plugin for ordinary Subscribers. On the left, Hide Dashboard is deactivated, while on the right, it is activated. Below is the same for an Editor:
Latest News (2007-11-10): I’ve just updated Hide Dashboard to version 1.1. The big change here is that I’ve added a widget for widget-enabled sidebars to use Hide Dashboard’s Meta instead of the WordPress default Meta section. This is done because the default WordPress Meta Login will direct subscribers and admins to the Dashboard page - which we’re trying to avoid (for subscribers anyway) in the first place. So now, when people login using Hide Dashboard’s Meta widget, it will take them back to the web page, and they can click on “My Profile” to see their own profile. I think this makes more sense for the default case. To see this sort of thing in action, try DeepWave.Net’s register and login functions above. Alternatively, if you do not have a widget enabled theme, then try using a WordPress theme like Serene which has Hide Dashboard’s login functions built right in. Additionally, this has been tested and is working fine on WP 2.3.1..
Edit (2008-07-28): This plugin works just fine with WordPress 2.6. But most users keep forgetting that they must use the special Hide Dashboard Meta Widget for logins. Just make sure you use a widget capable theme and use Hide Dashboard’s own Meta widget instead of the default one.
Update (2008-08-23): Two new options have been added to Hide Dashboard. The first, is the option to block access to the Dashboard via the URL Location bar (needs PHP Output Buffering to be enabled), and the second is the option to allow authors and editors (user level 2 and above) to view the Dashboard and other admin section pages. To enable output buffering, you can edit your php.ini file and set "output_buffering = On", or edit .htaccess and add the line "php_flag output_buffering On"
Update (2008-09-15): Well, there has been a number of changes in the code inside the plugin in order to properly handle the situations with the two options introduced in version 1.2. If things did not seem right for you, just upload version 1.3 and give it a try. I think this time the logic should be correct, and you should see the correct results when you set the options for Hide Dashboard. Also, by popular request, the Hide Dashboard Meta Widget is now more editor/author friendly, sending you to the “Manage Posts” page instead of your profile. Administrators go to the Dashboard, and everyone else goes to their Profile page (which was the default previously).