[TYPO3-german] zugriffsgeschützte Seiten in Menüs und Umleitung zur Login-Seite (showAccessRestrictedPages)

Marcel Thiele masm at gmx.net
Wed Nov 6 07:11:53 CET 2013


Hallo T3-Forum,

ich bin noch relativ neu bei TYPO3 und hoffe auf ein paar erhellende Antworten zu meinem Problem.

folgende Situation:
Ich habe auf meiner Website (TYPO3 6.1.5) eine Seite für das Benutzerkonto (Mein Konto) mit einigen Unterseiten erstellt. Zu dieser Seite sollen natürlich nur angemeldete Benutzer Zugang haben. Dafür hab ich in den Seiteneigenschaften unter Zugriff "Anzeigen, wenn angemeldet" eingestellt. Damit diese Seite (und Unterseiten) im Menü erscheinen, verwendet man ja showAccessRestrictedPages im TS-Setup des Menüs. Schön und gut, funktionierte aber bei meinem Setup nicht, da ich für das Menü special = list (directory funktionierte auch nicht) verwende. Scheinbar funktioniert showAccessRestrictedPages nicht bei geschützten Seiten, die direkt über special.value angegeben werden. Gebe ich hier eine Seite der nächsthöheren Ebene (in meinem Fall Root (id = 1)) an funktioniert es. Meine vorläufige Lösung dafür sieht wie folgt aus:

lib.sitenav = HMENU
lib.sitenav {  
  #special = list
  #special.value = 14
  
  excludeUidList = 2, 5, 6, 7, 11, 16 
  
  1 = TMENU 
  1 {    
    showAccessRestrictedPages = 5
    showAccessRestrictedPages.addParams = &return_url=###RETURN_URL### 
    
    wrap = <ul class="sf-menu">|</ul>
    expAll = 1
    
    NO = 1
    NO { 
      wrapItemAndSub = <li>|</li>
      stdWrap.htmlSpecialChars = 1       
    }  
  }

  2 < .1
  2.wrap = <ul>|</ul>  
}

Es wird also der gesamte Seitenbaum benutzt und die nicht gewünschten Seiten ausgeschlossen. Gibt es dafür eine bessere Lösung?

Der Menüpunkt "Mein Konto" führt jetzt wie gewünscht zur Login-Seite (index.php?id=5), wenn man nicht angemeldet ist. Damit dies auch bei den Unterseiten funktioniert, habe ich in den Seiteneigenschaften von "Mein Konto" das Häkchen bei "auf Unterseiten ausdehnen" gesetzt, allerdings verweisen die Menüpunkte weiterhin auf die Unterseiten und nicht auf die Login-Seite. Die Seiten selbst sind jetzt aber nicht zugänglich und man landet auf der Seite "Root" (obwohl die ein Verweis zu "Home" ist). Nur wenn ich jede Unterseite einzeln auf "Anzeigen, wenn angemeldet" setze funktioniert die Umleitung zum Login. Hab ich den Zweck des genannten Häkchens falsch verstanden oder ist das so beabsichtigt?

Das Problem, was ich bisher nicht lösen konnte betrifft die Weiterleitung nach erfolgreicher Anmeldung zur gewünschten Seite. Dafür benutzt man doch einen der GET-Parameter (redirect_url, return_url, referer). Richtig? Leider bleibt der Marker ###RETURN_URL### leer. Wenn ich zusätzlich die TS-Option "typolinkLinkAccessRestrictedPages" verwende ist der Marker gefüllt, aber nicht mit der gewünschten URL sondern mit der URL zur Login-Seite (index.php?id=5&return_url=index.php%3Fid%3D5). Wenn man den Parameter über typolinkLinkAccessRestrictedPages_addParams setzt, hat man 2 zusätzliche GET-Parameter in der URL (einer mit der falschen und der andere mit der richtigen URL und möglicherweise gleichem Namen). Das Weglassen von showAccessRestrictedPages.addParams bringt auch nichts, da man so gar keinen Parameter mehr hat. Hat jemand eine Idee woran das liegen könnte?

Grüße

Marcel


More information about the TYPO3-german mailing list