Я использую femanager для управления регистрацией пользователя, входа и выхода из системы.Предотвращение кэша Информация для входа
Как и многие другие сайты, я хотел бы показать некоторые данные пользователя в верхней части страницы (используя Boostraps mini-navbar).
- Если пользователь выходит из системы, это должно выглядеть так:
- Если пользователь вошел в систему, эта информация должна отображаться:
Как новичок Typo3, я реализую это с Typo Script и частичным в Fluid Template. Сценарий Typo считывает текущего пользователя (идентификатор пользователя и адрес электронной почты).
userdata = COA_INT
userdata {
10 = TEXT
10.data = TSFE:fe_user|user|uid
20 = TEXT
20.data = TSFE:fe_user|user|username
}
Частично использует идентификатор пользователя для проверки того, был ли пользователь зарегистрирован или вышел из системы.
<f:if condition="{f:cObject(typoscriptObjectPath: 'userdata.10')} > 0">
<f:then>
<!-- user is logged in -->
<span class="greeting">
<i class="fa fa-user"></i> <f:cObject typoscriptObjectPath="userdata.20" />
</span>
<f:link.page pageUid="319" additionalParams="{logintype: 'logout'}" class="pull-right"><i class="fa fa-power-off"></i> Logout</f:link.page>
</f:then>
<f:else>
<!-- user is logged out -->
<span class="greeting">
Test it for free
</span>
<f:link.page pageUid="317" class="pull-right"><i class="fa fa-arrow-circle-down"></i> Register</f:link.page>
<f:link.page pageUid="319" class="pull-right"><i class="fa fa fa-sign-in"></i> Log in</f:link.page>
</f:else>
</f:if>
Это работает нормально, но у меня проблемы с кешированием. Иногда мини-навигатор отображается для другим пользователем.
Мой вопрос: Как предотвратить частичное кеширование?
спасибо. Но у меня проблемы с этим. Я установил расширение __fluidcontent__ через диспетчер расширений, как описано [здесь] (https://fluidtypo3.org/documentation/installation/from-ter.html). Затем часть then и часть else игнорируются, то есть не отображаются. Должен ли я настроить что-то, чтобы использовать его в частичном? – Vertex
Вы зарегистрировали пространство имен в начале шаблона ?, например. '{namespace v = FluidTYPO3 \ Vhs \ ViewHelpers}' – konsolenfreddy
Нет, не сделал. Благодарю. Если я поместил директиву namespace в шаблон, он будет проигнорирован. Если я положил его в верхней части частичного, Typo3 показывает мне эту ошибку: 'Не удалось проанализировать класс: FluidTYPO3 \ Vhs \ ViewHelpers \ Security \ AllowViewHelper, возможно, не загружен или нет автозагрузчика?' – Vertex