8

In Joomla 3.5.1, I want to redirect users to the page they were before logging in.

If they login from mod_login, no problem, since the module is pending from the top menu, they just stay at that page.

The problem happens when the users login from the component: they are always redirected to the profile page.

In the menu item index.php?option=com_users&view=login there's an option to redirect users after login.

But how do I tell: "Get them back to the page they were before"?

Certain components are appending something like:

?return=L2YlQzMlQjNydW0tcGVyZ3VudGFzLWUtcmVzcG9zdGFzL2NvbnZlcnNhdGi9yZWFkLmh0bWw/aWQ9MjU= 

To the URL, requesting a redirect to a specific page.

But they always go back to the profile page.

1
  • they always go back to the profile page. it happens to me, regardless of modifying as @Lodder suggested. Commented Nov 28, 2017 at 14:23

2 Answers 2

7

Quite simple to do this.

You will firstly need to create a Template Override for the following file:

components/com_users/views/login/tmpl/default_login.php 

Once done, open the following file (your override):

templates/MY_TEMPLATE/html/com_users/login/default_login.php 

and go to line 81, where you will see the following code:

<input type="hidden" name="return" value="<?php echo base64_encode($this->params->get('login_redirect_url', $this->form->getValue('return'))); ?>" /> 

and replace it with:

<input type="hidden" name="return" value="<?php echo base64_encode($_SERVER['HTTP_REFERER']); ?>" /> 

Hope this helps

7
  • +1 Very nice idea. I'm not sure if the $_SERVER['HTTP_REFERER'] is always a valid choice, but I like the idea . Commented Apr 12, 2016 at 13:47
  • @mavrosxristoforos - Yeah it does have some drawbacks. A more advanced and reliable solution would involve a system plugin, making use of a session or cookie Commented Apr 12, 2016 at 13:58
  • Thanks a lot for helping, I've been using template overrides for K2 for years but for core joomla it seems impossible. I did look at the instructions in your link, including the "Creating overrides" section but whatever changes I do are ignored. Commented Apr 12, 2016 at 14:14
  • @NunoNogueira - The file you open to make the changes to, does the path match what I've provided in my answer (2nd code snippet)? It should be exactly the same, apart from MY_TEMPLATE which of course is the name of your template Commented Apr 12, 2016 at 14:15
  • @NunoNogueira - I made a mistake with the path, I've updated it now. (remove /view/) Commented Apr 12, 2016 at 14:17
0

Do not create any login menu. This way it redirects automatically to the last page requested and attempts to login. For the same page, then use a guest page to a restricted page or you can use a login redirect to the same page.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.