XF 1.5 Возврат на предыдущую страницу после регистрации

misterblack

Проверенные
Сообщения
31
Реакции
5
Баллы
1,705
В общем суть вопроса:
Имеется связка wordpress+xenforo через плагин xenword. Как сделать так, чтобы при переходе с wordpressa на регистрацию в xenforo, после регистрации перейти на изначальную страницу откуда пришел?
 
Последнее редактирование:
В коде шаблона страницы после регистрации: register_confirm
Код:
<div class="systemMessage">

    <xen:if is="{$user.user_state} == 'moderated'">
        {xen:phrase your_email_has_been_confirmed_registration_must_be_approved}
    <xen:elseif is="{$oldUserState} == 'email_confirm_edit'" />
        {xen:phrase your_email_has_been_confirmed_and_your_account_is_now_fully_active_again}
    <xen:else />
        {xen:phrase your_email_has_been_confirmed_and_your_registration_is_now_complete}
    </xen:if>

<div class="baseHtml">
        <ul>
            <xen:if is="{$redirect}">
            <li><a href="{$redirect}">{xen:phrase return_to_page_you_were_viewing}</a></li>
            </xen:if>
            <li><a href="{xen:link index}">{xen:phrase return_to_forum_home_page}</a></li>
            <xen:if is="{$canEditProfile}">
                <li><a href="{xen:link account}">{xen:phrase edit_your_account_details}</a></li>
            </xen:if>
        </ul>

   
   
   
    </div>

</div>

есть строка:

Код:
<xen:if is="{$redirect}">
            <li><a href="{$redirect}">{xen:phrase return_to_page_you_were_viewing}</a></li>
            </xen:if>

Как включить ее? После регистрации такой ссылки нету, скрин прилагаю

сгщсгщсгщ.jpg
 
Нужно в POST запрос в форме регистрации передать параметр redirect. Для шаблона register_confirm такой возможности не предоставляется (переменная попросту не передается для него, хоть и почему-то присутствует в самом шаблоне как "должно работать"), но подходит как раз для register_proccess.
Просто где-нибудь в форме (<form>) регистрации укажи <input type="hidden" name="redirect" value="ЛЮБОЙ_URL" />

Если есть у кого-то идеи посмышлёнее - вперёд :-)
 
Последнее редактирование:
Alex Fair, Да даже без этого плагина, в самом xenforo не появляется ссылка на возврат, а код то этот по идее есть:
Код:
<xen:if is="{$redirect}">
            <li><a href="{$redirect}">{xen:phrase return_to_page_you_were_viewing}</a></li>
            </xen:if>
 
Я тебе говорю о том, что этот параметр нигде не передается сам (либо его нужно указать явно, либо это мнимая видимость. См. ниже, объяснить яснее я уже не могу).
В register_confirm параметр вообще не учитывается, в шаблоне он есть - да, но PHP обработчиком он не передается.
В register_proccess дело иначе - PHP обработчик может отправлять параметр, но для этого ему нужен повод - указать в POST запросе этот самый параметр.
Тут два варианта:
  1. указать в POST запросе этот самый параметр. Решением может послужить тот вариант, который я писал ранее;
  2. Изменить PHP обработчик ручками, либо прикрутить собственный плагин в котором будет изменяться/добавляться этот самый параметр redirect.
Также, параметр redirect передается автоматически (движком) при регистрации через twitter, facebook и google (через внутренние кнопки).

Это вся информация, которую я смог найти в самом коде и шаблонах в которых используется эта ссылка.
 
Последнее редактирование:
Современный облачный хостинг провайдер | Aéza
Назад
Сверху Снизу