How can I redirect to a specific page after login? I use $LoginForm on the frontpage, and want the users to end up at /account after successful login.
We've moved the forum!
Please use forum.silverstripe.org for any new questions
(announcement).
The forum archive will stick around, but will be read only.
You can also use our Slack channel
or StackOverflow to ask for help.
Check out our community overview for more options to contribute.
Hi Sec
I have just poste a tutorial on SSbits to do just this :)
http://www.ssbits.com/custom-login-form-with-group-based-redirection/
hope it helps
Aram
Hi Aram,
SSbits.com looks great :) added it to my Google Reader.
One question, how could we extend this to redirect to a specific page in the admin ie. test.com/admin/show/5 based on the security group?
Thanks,
Howard
Hi Howard
Sorry for the late reply, I forget to subscribe to this thread and just came accross it again!
The way to do this is to have the link be /admin/show/$ID of the page you want to redirect to. So I image you extract the Id from the TreeDropdownField and insert it into the redirector so change these lines:
$Link = DataObject::get_by_id("SiteTree", "{$Group->LinkPageID}")->URLSegment;
to this:
$ID = DataObject::get_by_id("SiteTree", "{$Group->LinkPageID}")->ID;
Abd this line:
Director::redirect(Director::baseURL() . $Link);
to this:
Director::redirect(Director::baseURL() . "admin/show/" . $ID);
That should work :)
Aram
I've used the code as ssbits but for some reason I can't get users to redirect. After login it says "I'm sorry, but you can't access that part of the CMS. If you want to log in as someone else, do so below"
I have setup the page using $LoginForm
Also, after I login on this page and I get that message, if I try to goto the page where this user is ABLE to access, it makes me login again @ /Security/login
then if I go directly to /Security/login, it will log in and say welcome back, user. you are logged in as user. and there will be no redirect.
Thanks Carbon Crayon, where do you replace this code? Your link to ssbits is broken.