2017-05-15 3 views
0

Ich benutze TYPO3 7.6 LTS mit der Systemextension felogin. Alles funktioniert gut. FE-User nutzen einen Login um meine Website zu besuchen.TYPO3 felogin Weiterleitung an Referer

Jetzt möchte ich einen Link per E-Mail an einige Benutzer senden - wie ein Deeplink, z. example.org/index.php?id=123. Sie sollten auf die URL klicken (pid = 123), FE-Login (pid = 1) und TYPO3 sollte auf Seite 123 umleiten.

Ich dachte, ich verwende Referer aber es funktioniert nicht? RSA funktioniert immer noch gut. Ich verwende die Standardvorlage von Ext:felogin.

Habe ich etwas vergessen?

Mein TypoScript:

config.typolinkLinkAccessRestrictedPages = 1 
config.typolinkLinkAccessRestrictedPages_addParams = &referer=###RETURN_URL### 

plugin.tx_felogin_pi1 { 

    storagePid = 27,15 
    #templateFile = EXT:myext/Resources/Private/Extensions/Felogin/Templates/FrontendLogin.html 

    showForgotPasswordLink = 1 
    #showPermaLogin = 

    forgotLinkHashValidTime = 12 
    newPasswordMinLength = 4 


    ### redirect options 
    redirectMode = referer 
    redirectFirstMethod = GET 

    redirectPageLogin = 2 
    redirectPageLoginError = 1 
    redirectPageLogout = 1 

    # disable redirect with one switch 
    redirectDisable = 

    # Show logout form direct after login 
    showLogoutFormAfterLogin = 0 
} 

Flexform: nichts! Alles über TS, aber es wird nicht funktionieren ...

Frontend HTML:

<form action="/" target="_top" method="post" onsubmit="; return true;"> 
... 
<div class="felogin-hidden"> 
    <input type="hidden" name="logintype" value="login" /> 
    <input type="hidden" name="pid" value="15,27" /> 
    <input type="hidden" name="redirect_url" value="" /> 
    <input type="hidden" name="tx_felogin_pi1[noredirect]" value="0" /> 
</div> 

Antwort

0

einfach die redirectFirstMethod Methoden angeben. Diese Funktion erfordert, dass der GETvar "Referer" auf die Seite gesetzt wird, zu der der Benutzer nach der Anmeldung zurückkehren soll. Weitere detalis reffere diesen Link felogin

plugin.tx_felogin_pi1 { 
    redirectMode = referer 
    redirectFirstMethod = GET 
} 
config.typolinkLinkAccessRestrictedPages = 1 
config.typolinkLinkAccessRestrictedPages_addParams = &referer=###RETURN_URL### 
+0

Hallo Pravin, danke für deine Antwort. Jetzt habe ich alles in Typoskript, nichts in Flexform. Ich habe meinen Beitrag bearbeitet. Aber es wird immer noch nicht funktionieren. Ich habe auch 'showLogoutFormAfterLogin = 0 'wie im felogin-wiki beschrieben ..?! – user2310852

0

Wie in der FElogin manual erwähnt, kann die felogin Erweiterung nicht tief Links von selbst handhaben:

Wenn die Besucher direkt die URL eines Zugriffsbeschränkungen Seite eingeben werden sie auf die erste Seite in der Rootline gesendet werden, auf die sie zugreifen können. Diese direkten Besuche auf eine Login-Seite zu senden, ist keine Aufgabe des felogin-Plugins, sondern erfordert eine benutzerdefinierte Seite, die nicht gefunden wurde.

Ein benutzerdefinierter nicht gefundener Handler ist beispielsweise die Erweiterung 'pagenotfoundhandling'.

Sobald Sie die Erweiterung installiert haben, gehen Sie zu den Erweiterungseinstellungen und legen Sie die UID Ihrer Login-Formularseite als 'Standard 403 Page' fest und speichern Sie sie.

Wenn ein Benutzer nun mit einem Deeplink auf eine zugriffsbeschränkte Seite geht, wird er zur Anmeldeseite weitergeleitet - die URL bleibt jedoch als URL des Deeplinks erhalten. Dadurch wird der Benutzer nach dem Login auf die richtige Seite weitergeleitet.

Kredit zu Bharat für ursprünglich mit dieser Lösung in einem anderen thread kommen.

Verwandte Themen