Для того чтобы изменить параметры редиректа (перенаправления, переадресации) после регистрации пользователя нужно внести изменения в файл components/com_users/controllers/registration.php.
Смотрим самый низ страницы с кодом. Где-то в районе строки 188 находим код:
// Redirect to the profile screen.
if ($return === 'adminactivate'){
$this->setMessage(JText::_('COM_USERS_REGISTRATION_COMPLETE_VERIFY'));
$this->setRedirect(JRoute::_('index.php?option=com_users&view=registration&layout=complete', false));
}else if ($return === 'useractivate') {
$this->setMessage(JText::_('COM_USERS_REGISTRATION_COMPLETE_ACTIVATE'));
$this->setRedirect(JRoute::_('index.php?option=com_users&view=registration&layout=complete', false));
} else {
$this->setMessage(JText::_('COM_USERS_REGISTRATION_SAVE_SUCCESS'));
$this->setRedirect(JRoute::_('index.php?option=com_users&view=login', false));
}
В этом фрагменте видим 3 варианта переадресации:
Первый ( index.php?option=com_users&view=registration&layout=complete ) выполняется после регистрации пользователя, если учетная запись должна быть активирована администратором.
Второй ( index.php?option=com_users&view=registration&layout=complete ), если учетная запись должна быть активирована пользователем.
Третий ( index.php?option=com_users&view=login ), если активация учетной записи не требуется.
Замените ссылки в зависимости от типа регистрации, который вы используете, на нужный вам URL.
Например, если активация учетной записи на моем сайте не требуется, и я хочу перенаправить пользователя после регистрации на http://shkola-fiziki.ru/welcome , исправленный код будет выглядеть так:
// Redirect to the profile screen.
if ($return === 'adminactivate'){
$this->setMessage(JText::_('COM_USERS_REGISTRATION_COMPLETE_VERIFY'));
$this->setRedirect(JRoute::_('index.php?option=com_users&view=registration&layout=complete', false));
} else if ($return === 'useractivate') {
$this->setMessage(JText::_('COM_USERS_REGISTRATION_COMPLETE_ACTIVATE'));
$this->setRedirect(JRoute::_('index.php?option=com_users&view=registration&layout=complete', false));
} else {
$this->setMessage(JText::_('COM_USERS_REGISTRATION_SAVE_SUCCESS'));
$this->setRedirect(JRoute::_('http://shkola-fiziki.ru/welcome', false));
}
Комментарии
В таких случаях я делаю страницу (материал), на которой пишу "Вы успешно зарегистрирован ы, вам отправлено письмо..." Ниже этого текста делаю ссылку "Перейти на главную". И вот как раз на эту страницу делаю редирект, как описано в статье. Правка components/com_ users/controlle rs/registration .php
А что происходит? Снова открывается пустая форма регистрации? Пользователь при этом создается или нет?
что делать?
RSS лента комментариев этой записи