IWG Hide Dashboard
If you want to hide the dashboard before some users
This Plugin gives you the possibility to hide the Dashboard before selected users. It is very flexible, since it works with an extra capability “Hide Dashboard”. This capability can be assigned to one or more roles and/or as an extra capability to one or more users.
Users with hidden Dashboard will be redirected to their profile-page.
Current Version
The current version of “IWG Hide Dashboard” is 1.0.3 from 28. April 2008.
Supported WordPress-Versions
This Plugin is tested from WordPress 2.3 up to 2.5.1. It should also works with 2.2.x and 2.1.x.
Other Plugins you need
You need also my Role Manager Plugin. Please, install it first.
Download and Installation
- Download the “IWG Hide Dashboard” Plugin
- Unzip the downloaded file and copy all included files in the plugin-directory (
wp-content/plugins) - Activate the Plugin at your WordPress “Plugins”-Tab
- Ready!
Using
The ordinary WordPress menu with access to the Dashboard:
First use the Role Manager and create a new capability “hide dashboard”:
Assign the newly created capabilty “Hide Dashboard” to each role who you don’t want give access to the Dashboard:
From this time on, all users with the capability “Hide Dashboard” have no longer access to the Dashboard and will be redirected to their profile:
If you want restrict only a single user, activate the capability “Hide Dashboard” as an extra capability on the users profile page.

am 08.10.2007 um 12:24 Uhr:
Hi Thomas,
Thank you for that I will give it a try this morning.
As you appear to be a guru with Wordpress, do you know how I can enable viewable profiles for every user on my WP install? At the moment I can only view profiles of ‘authors’ who have made a post. This is done via a nice url like /author/user_name/ however if I access a user via /?author=ID/ it does show the profile but breaks the sidebar loop.
Is it possible to get ALL USERS (inc. people who haven’t posted) to have a viewable profile via a friendly url.
I do appreciate your time.
Kind regards,
Steve.
am 08.10.2007 um 16:26 Uhr:
By the way Thomas, the Hide dashboard function worked perfectly.
Thank you.
am 09.10.2007 um 00:18 Uhr:
@deep.thought:
(I mean the plugin)
Uff, that was my hope.
I know the problem with authors who haven’t posted. I had it too on an other blog some time ago. But I don’t looked in the code yet, sorry.
“Breaks the sidebar loop” - which part? On widgets?
am 09.10.2007 um 17:23 Uhr:
I have found the code the returns just a name rather than a link if posts == 0 however, the resultant link gets pushed to the 404 error page, so there is obviously a redirect going on that I can’t find.
As to the sidebar, it doesn’t output some of the query results when I use ?author=ID. I don’t use widgets and I am not sure why it just breaks some of the query’s. Thought it would either break all of them or none of them.
Thanks again Thomas,
Steve.
am 10.10.2007 um 16:23 Uhr:
I will look for this in the next days. Maybe, this can be a job for my Plugin “IWG Extended Author List” …
am 10.10.2007 um 19:35 Uhr:
Thomas,
That would be fantastic, I have been trying to figure this out for about three days (on and off) and all I seem to be able to achieve successfully is a broken wordpress lol. If I do succeed I will let you know what I have discovered. And I would appreciate it if you would let me know when you crack it.
Regards,
Steve.
am 29.10.2007 um 04:42 Uhr:
hi Thomas
Your website is so good looking , Could you tell me this wordpress theme name or email me this theme。I can’t find this because I can’t read german。I’m sorry for that。 thank you very much
am 29.10.2007 um 09:47 Uhr:
@escapell:
Sorry, but this is an self coded theme: no public available, download and so on. Sorry, for this bad news.
am 30.10.2007 um 03:49 Uhr:
this plugin does not work for me with WP 2.3.1-RC1–i haven’t had time to upgrade to 2.3.1 final.
after activating and then setting the new “Hide Dashboard” capability, the dashboard still displays, and this Warning message appears at the top of every page:
–
Warning: Cannot modify header information - headers already sent by (output started at /wordpress/wp-admin/admin-header.php:16) in /wordpress/wp-includes/pluggable.php on line 391
–
as soon as i deactivate this plugin the above Warning goes away.
any idea what the problem might be?
am 30.10.2007 um 10:20 Uhr:
@David:
Thank you for your note.
I tried this on a fresh 2.3.1. version with fresh downloaded “IWG Hide Dashboard” version. It’s works fine without any errors.
The RC1 is a dev-release and outdated, you know. I haven’t had enough time to test against the RC1. But it’s sound interesting, what you get an error on it. The error looks a little bit such as you have an edited version of the “IWG Hide Dashboard” Plugin with an empty line at the top or the bottom of it. See also my german post about such errors (it should easy to translate with Google, eg).
am 02.11.2007 um 18:47 Uhr:
Hi Thomas
Did you have any luck with the “IWG Extended Author List”? Unfortunately I can’t read German so I am unable to understand most of your site and was wondering if you had found the time to weave your magic.
Regards,
Steve.
am 06.11.2007 um 11:16 Uhr:
Hi deep.thought,
I tried something. Now I know whats happens and where. A little workaround: If the user has a private post you don’t get a 404. Can you try this?
I need also a solution for this and hope to find a better way - but it’s not so easy
am 17.11.2007 um 05:31 Uhr:
I’m having the same problem as David:
Warning: Cannot modify header information - headers already sent by (/path/to/site/admin-header.php:15) in /path/to/site/wp-includes/pluggable.php on line 391.
am 05.12.2007 um 01:34 Uhr:
I am having the same problem as David and GT. I have wp 2.3.1 and I get the error message when I click from the Site Admin link.
I am trying to make it obvious when the person is logged in so the will realise that they need to logout when they leave so I have used wp_register() to display in a brightly colored div at the top of the page.
I have not altered your plugin at all and I see no blank lines in the code of the plugin
am 05.12.2007 um 10:43 Uhr:
hi Thomas,
this is just such a great plugin! I love it. Is there a way that after login users to be redirected to the home page instead to their profile?
am 23.12.2007 um 17:08 Uhr:
@Wendy, GT and David:
This week I’ve released a new version (1.0.2) (see also this posting). The new version should help you.
@Wendy:
I’ve also tried the new version with an click on the “site admin link” if a user is logged in. Everything is fine.
@Galinux:
An other plugin (not from me) do such a job. It may be used irrespective of “iwg hide dashboard”. But I can’t remember the right name, in the moment. Sorry.
am 26.12.2007 um 21:39 Uhr:
I have wp 2.3.1 and I get the error message (same as David and GT), even if I installed the latest version of your plugin (published on 23.12). Am I the only one who still have this problem?
am 27.12.2007 um 00:20 Uhr:
I’ve just noticed the error is displayed when Hide Dashboard and Edit Posts are set for the same role. If I disable “Edit Posts” for a role, the the plugin works correctly fot that role… unfortunately I need that capability active for my subscribers…
am 27.12.2007 um 15:07 Uhr:
@Galinux the plugin your looking for is this:
http://www.thedailyblitz.org/weasels-login-redirect-text-replacement-plugin
Unfortuantly it dont work if you put it together with the hide dashboard plugin.
If you do this you will get the same problem as David
Perhaps Thomas have a fix for that ?
am 27.12.2007 um 17:58 Uhr:
Thanks Domin!
am 08.01.2008 um 13:30 Uhr:
@Veronica:
I tried this without any error. I’m also using the admin-user and set the “hide dashboard” capability. No error. Sorry.
@Domin:
Thanks. This is a very helpful information. I will play something with the login redirect plugin.
am 16.01.2008 um 00:39 Uhr:
Your welcome Thomas, im just glad to be using your great plugin on my page
am 23.01.2008 um 20:31 Uhr:
Hello! IWG Hide Dashboard ’s not work in WP 2.3.2, plz help me.
am 23.01.2008 um 20:33 Uhr:
More: Others Capabilities work good!(but some javascript error occur, you can fix it?)
am 25.01.2008 um 01:31 Uhr:
Hey Thomas: I figured out what the problem was after digging into the way WP sends headers. A php server variable (’output_buffering’) must be set to ‘On’ in order to allow a php script to modify the headers after they’ve already been set, as your plug-in does. I think you might be able to modify your plugin so that the header buffering is performed at run-time with php output functions like ob_start, etc. but I’m no expert in this regard.
am 03.02.2008 um 22:10 Uhr:
I was having the same problem as everyone above (using WP 2.3.2) where the headers were already sent before redirecting the page. You can get around the error by changing the line
wp_redirect('profile.php');to
echo "<meta http-equiv='Refresh' content='0; URL=" . get_option('siteurl') . "/wp-admin/profile.php'>";am 04.02.2008 um 14:19 Uhr:
Thanks thatsmith. Your solution is working for me.
am 22.02.2008 um 15:09 Uhr:
Which file do you need to edit?
am 05.03.2008 um 21:49 Uhr:
Had the same problem as the above. When I changed the line like “thatsmith” said it worked to login, problem was when I try to make any changes or logout I get the same error.
am 15.03.2008 um 17:20 Uhr:
hi.. any suggestions?
function iwg_hide_dashboard() {
global $menu;
if ( current_user_can('hide_dashboard') ) {
unset($menu[0]);
add_action('load-index.php','iwg_hide_dashboard_redirect', 0);
}
}
function iwg_hide_dashboard_redirect() {
if ( current_user_can('hide_dashboard') ) {
wp_redirect('profile.php');
exit();
}
}
add_action('admin_menu','iwg_hide_dashboard', 0);
am 22.03.2008 um 03:13 Uhr:
thatsmith or Tristan,
I am curious as to which program you applied the change above to get around where the headers that were already sent before redirecting the page error.
I can’t find the code you changed.
am 22.03.2008 um 04:32 Uhr:
Nevermind thatsmith/Tristan,
I just entered the code from Eval and it works perfectly!
Thanks.
am 22.03.2008 um 13:28 Uhr:
Hallo, ich habe beide aktuellen Versionen installiert.
(Role Manager und IWG Hide Dashboard)
Aber das Dashboard kann ich für normale User nicht ausstellen.
Liegt es vielleicht an mein Theme WP-Andreas09 2.1?
Grüße
Thunder-man
am 22.03.2008 um 13:55 Uhr:
Habe beides neu hochgeladen und es funnzt nun THX für die
Plugins, echt klasse.
Thunder-man
am 14.04.2008 um 05:22 Uhr:
the fix from thatsmith worked for me
although bear in mind that the ' reference is actally a ‘
am 16.04.2008 um 23:47 Uhr:
Hi,
Any plans on making this 2.5 compatible? It sure would be a great add-on to my blog.
Thanks,
Gene
am 18.04.2008 um 21:40 Uhr:
Hi,
Will this work with 2.5 or should I wait for an updated version?
Cheers,
Gene
am 22.04.2008 um 18:45 Uhr:
I would be very happy to see a 2.5-compatible version, this plugin is very great!
am 22.04.2008 um 18:46 Uhr:
Any 2.5-compatible version? I love this plugin
am 22.04.2008 um 21:59 Uhr:
Gene and gian:
The plugin should works with WordPress 2.5. Do you have any problems with it under 2.5? Please give me a note about that, because I want to release an update this week. The update also includes some new code mentioned by other users.
am 22.04.2008 um 23:41 Uhr:
Hi Thomas,
First of all; thanks a lot for your fantastic plugins.
Second: It works perfectly with WP2.5!
am 25.04.2008 um 05:51 Uhr:
Hi Thomas,
When I tried it “out of the box”, I got the same errors as a few people reported. I tried eval’s code and it now works.
Also, it irritates the heck out of me that when a user logs in, he gets taken to the dashboard (which is useless for subscribers) and the only option he can click on is “Profile”.
So, I modified a bit of code that redirects users to the main page after logging in by changing a bit of code in wp-login.php:
case 'login' :default:
if ( isset( $_REQUEST['redirect_to'] ) )
$redirect_to = $_REQUEST['redirect_to'];
else
$redirect_to = '/blogname'; (instead of 'wp-admin/')
Finally, if you want to get picky and change “Site Admin” to something more user friendly, in /wp-includes/general-template.php, find (line 52):
$link = $before . '‘ . __(’Site Admin’) . ‘‘ . $after;and change Site Admin to whatever you like (Settings & Profile, etc.).
Cheers,
Gene
am 28.04.2008 um 13:05 Uhr:
Hi, Thomas.
Nice solution.
Can it is necessary to use function wp_safe_redirect() instead of wp_redirect() ?
am 28.04.2008 um 13:37 Uhr:
@eval:
Thanks
wp_safe_redirectcalls alsowp_redirect(at the end). Some servers and/or with special php-settings are sending immediate the headers.wp_safe_redirectruns in the same problem here. The solution wasn’t easy to find, because I tested this on many servers but never I saw such an error. This is more or less a solution from brainstorming and not from testingam 28.04.2008 um 20:40 Uhr:
Hallo Thomas!
Habe das Plugin installiert. Im Role Manager funktioniert alles wunderbar. Nach dem Login erscheint jedoch nur eine weiße Seite. Also keinerlei Weiterleitung. Verwende WP 2.5.1 DE-Edition.
Vielleicht kannst du helfen!
Lg, Ingo
am 28.04.2008 um 21:21 Uhr:
@Ingo:
Was steht im Logfile des Servers?
am 10.05.2008 um 01:52 Uhr:
Hi Thomas,
I noticed I had to update the plugin. I had indeed some errors appearing. But all is working well again.
Now I noticed that when someone logs in he/she is directed to the Profile page. I thought this used to be directed to the post-new page? Which I actually prefer. Is there a way to achieve that?
Maybe an idea to have a sort of Hide Dashboard Option Page combined in the Role Manager plugin? Maybe that also Gene’s idea can be added then? And as well a possibility to adapt the Profile page… because that page sometimes makes things very unclear for visitors.
Or am I now dreaming to much?
am 26.06.2008 um 19:10 Uhr:
Hi Thomas, do you do custom plugin creation? From looking at your work, my task seems like it would be easy for you. Please let me know via email. Thanks,
Mike
am 11.09.2008 um 15:44 Uhr:
Hi.
It works but I am curious if it is possible without the Role Manager. I am trying to use as few plugins as possible and I really don’t need the extra functions of the Role Manager just to get rid of the dashboard for default subscriber role.
Thanks.
Max
am 12.09.2008 um 06:48 Uhr:
I got it to work without the Role Manager by changing one line of code. From:
if ( current_user_can('hide_dashboard') ) {
To:
if ( !current_user_can('level_10') ) {
Max
am 13.09.2008 um 16:06 Uhr:
Simplemente muchas gracias
Just thank you very much
am 18.09.2008 um 22:03 Uhr:
@Max:
Yes you can deactivate the Role Manager after your changes. The Role Manager isn’t involved at runtime.
The way (code) you are posted is not in the scope of IWG Hide Dashboard. You can find many other plugins around the world using the same way as your posted code. But it isn’t really a good idea using levels - they are deprecated. With different capabilities you have many more flexibility - and this is the scope of this plugin.
am 23.11.2008 um 18:40 Uhr:
Hi Thomas.
Love your Role Manager plugin but i’m having problems with IWG Hide Dashboard. The hide dashboard option is not showing up in Role Manager. Is this compatible with WP 6.3?
Thanks,
Rick
am 24.11.2008 um 17:15 Uhr:
@Rick:
“IWG Hide Dashboard” and “Role Manager” are compatible to 2.6.3. At this version of “IWG Hide Dashboard” first you must create a capability “hide dashboard” with the Role Manager - look at the screenshots above.
A new version of “IWG Hide Dashboard” is currently in development stage. It will comes out short after version 2.7 of WordPress. With this new version of “IWG Hide Dashboard” you don’t need no longer the “Role Manager” if you want hide the dashboard for whole roles.
am 24.01.2009 um 12:14 Uhr:
Hi, Thomas,
Is this plugin compatible with Wordpress MU? Is it going to work in multi user?
am 10.02.2009 um 09:35 Uhr:
Hey. Great plugin. Is it 2.6.5 compatible? I have the role manager set up and everything seems fine, but I dont see any IWG Hide options anywhere, only in the roles under settings.
Thanks
Rob
am 20.02.2009 um 15:34 Uhr:
Can anyone help me please ? I think i have installed and set the 3 plugins right. Now i want to get a listing of all people who registered. The tutorial says:
“So how do you list all of your approved members? It is as simple as adding the wp_list_authors to any template file. This is the customized version of that function I use:
”
Also, i want to list all subscribers (who i modified to “hide panel + post/read private messages”
In our localized version “subscriber” is “Abonnee”. Should i change wp-list_authors into wp_list_subscribers or wp_list_Abonnees (with a capital A ?)
Where do i add it ? In single.php, in page.php, index.php, where exactly do i put it in those ?
Or do i open a post, go to HTML view and paste the code….. in a post, or a page ?
What’s with the author page. Do i copy it in the template directory, or in the Wordpress main directory (usually root)
I’m not exactly a beginner (although close LOL ) but now i have too many variables to experiment my way out of this… Help is needed and much appreciated
am 01.03.2009 um 19:15 Uhr:
I want authors to view only their posts on dashboard. How to do that?
am 29.03.2009 um 00:09 Uhr:
Can I hide Tools as well. I did a “capability” for Hide Tools but did not work. Thanks Chris
am 22.07.2009 um 16:15 Uhr:
Hello Thomas!
I’m trying out your pluggin in WP 2.8.1 I have installed Role Manager and Hide Dashboard. (Latest versions). I was wondering how to modify the page the user is redirected. I would really like regular subscribers to be re-directed to the page they where visiting when logged in. (They have to log in to comment).
Thank you,
aguitta.
am 22.07.2009 um 16:23 Uhr:
By the way, big fan of Role Manager.
am 29.07.2009 um 00:43 Uhr:
thanks SO much for this and Role Manager!! You saved me!
am 20.08.2009 um 06:13 Uhr:
Hi ….
Thanks for plug in, I really enjoyed.
Good job
am 23.09.2009 um 08:45 Uhr:
Great plug!
Tnx
VVOR
http://www.vvor4.nl
am 09.10.2009 um 12:59 Uhr:
very nice plugin for the admin you created. But unfortunately i am not able to use that because i am using the latest version and hoping that you will work on this highly admirable project taking out some moments from your precious time as people can get benefited on the behalf of you.
thanks
am 19.11.2009 um 16:29 Uhr:
runnin 2.8.6.
created new capabilty.
set for a specific user group.
they still see the dashboard.
am 12.01.2010 um 14:56 Uhr:
is it possible to hide the profile as well? I have many users logginig in as a ‘guest’ and dont want them to change email etc in the profile section.
Many thanks
A
am 25.01.2010 um 10:39 Uhr:
Try Profiler:: Prevent Email Addresses views to members… Allow/Disallow www web addresses in comments… and more
and Disallow Non-Members from access to pages… categories [you pick] and more…
Steve Noel Sr. / Your Traffic Manager
am 06.01.2011 um 12:51 Uhr:
Do you have any plans to update this plugin? It doesn’t seem to work correctly in WP v.3
Best regards,
Christian
am 23.02.2011 um 19:11 Uhr:
any news if this is going to be compatible in Wordpress 3.0?
Would really love to use it as it comes highly recommended.
am 13.05.2011 um 03:37 Uhr:
I already have role manager plugin installed. I uploaded your hide dashboard plugin and activated it. But I dont see the “Hide Dashboard” button in the roles. Do I need to custom create this role?
Please Help!!!!
Sean @ $7 freelance