Перейти к содержимому
Русский язык для Invision Community 5

Редирект при регистрации

Доброго вечера всем.

Ранее на 3-й версии был настроен редирект после регистрации в определенную тему для новых участников.

Сейчас для 4-ки такого не нашел. Есть ли уже готовые решение этого вопроса?

Рекомендованные сообщения

Если регистрация с подтверждением, то в файле \applications\core\modules\front\system\register.php

\IPS\Output::i()->redirect( \IPS\Http\Url::internal( '' ), 'validate_email_confirmation' );

заменить на

\IPS\Output::i()->redirect( \IPS\Http\Url::createFromString('ссылка_на_тему'), 'validate_email_confirmation' );

Не забудьте заменить ссылка_на_тему в коде

  • Автор

Если регистрация с подтверждением

А если без?

\system\Login\Login.php

 

		return $ref ?: \IPS\Http\Url::internal( '' );

 

		return $ref ?: \IPS\Http\Url::createFromString('ссылка_на_тему');

  • Автор

@newbie, Не работает... При регистрации нового участника редиректа нет.

ссылка_на_тему в коде заменили?

 

Может там реферер присутствует?

Попробуйте

return \IPS\Http\Url::createFromString('ссылка_на_тему');

  • Автор

@newbie, Ссылку конечно вставил... Сейчас посмотрел, что после регистрации у меня еще присутствует обязательное заполнение профиля после регистрации.

Последний вариант снова не работает.

  • Автор

Когда отключаю обязательное заполнение профиля все работает!

Сейчас посмотрел, что после регистрации у меня еще присутствует обязательное заполнение профиля после регистрации.

Там в методе finish нужно править (\applications\core\modules\front\system\register.php)

Ищите 2 раза

\IPS\Http\Url::internal( '' )

и заменяйте на

\IPS\Http\Url::createFromString('ссылка_на_тему')

 

Если непонятно где

 

 

		if ( $haveRequired === FALSE )
	{
		/* Nope, forward */
		\IPS\Output::i()->redirect( \IPS\Http\Url::internal( '' ) );
	}

и

		$wizardSteps = array_merge( $wizardSteps, array( 'profile_done' => function( $data ) {
		\IPS\Output::i()->redirect( \IPS\Http\Url::internal( '' ), 'saved' );
	} ) );

 

 

  • Автор

@newbie, Теперь работает. Спасибо огромное!

Создайте аккаунт или войдите в него для комментирования

Аккаунт

Навигация

Поиск

Поиск

Настроить push-уведомления браузера

Chrome (Android)
  1. Нажмите на иконку замка рядом с адресной строкой.
  2. Нажмите Права доступа -> Уведомления.
  3. Измените свои настройки.
Chrome (компьютер)
  1. Нажмите на иконку замка в адресной строке.
  2. Выберите Настройки сайта.
  3. Найдите Уведомления и измените свои настройки.