text in viewforum nur für nicht eingeloggte User anzeigen'
Forumsregeln
phpBB 2.0 hat das Ende seiner Lebenszeit überschritten
phpBB 2.0 wird nicht mehr aktiv unterstützt. Insbesondere werden - auch bei Sicherheitslücken - keine Patches mehr bereitgestellt. Der Einsatz von phpBB 2.0 erfolgt daher auf eigene Gefahr. Wir empfehlen einen Umstieg auf phpBB 3.1, welches aktiv weiterentwickelt wird und für welches regelmäßig Updates zur Verfügung gestellt werden.
phpBB 2.0 hat das Ende seiner Lebenszeit überschritten
phpBB 2.0 wird nicht mehr aktiv unterstützt. Insbesondere werden - auch bei Sicherheitslücken - keine Patches mehr bereitgestellt. Der Einsatz von phpBB 2.0 erfolgt daher auf eigene Gefahr. Wir empfehlen einen Umstieg auf phpBB 3.1, welches aktiv weiterentwickelt wird und für welches regelmäßig Updates zur Verfügung gestellt werden.
-
- Mitglied
- Beiträge: 19
- Registriert: 13.05.2007 10:59
text in viewforum nur für nicht eingeloggte User anzeigen'
Ich möchte einen Text in viewforum.php nur dann anzeigen, wenn ein User nicht eingeloggt ist. Gibt es dafür so eine ähnliche Lösung wie den <!-- BEGIN switch_user_logged_out --> -Switch, der ja aber scheinbar nur im overall_header funktioniert?
- gn#36
- Ehrenadmin
- Beiträge: 9313
- Registriert: 01.10.2006 16:20
- Wohnort: Ganz in der Nähe...
- Kontaktdaten:
Der Switch sollte eigentlich überall funktionieren wenn er im overall_header funktioniert.
Begegnungen mit dem Chaos sind fast unvermeidlich, Aber nicht katastrophal, solange man den Durchblick behält.
Übertreiben sollte man's im Forum aber nicht mit dem Chaos, denn da sollen ja andere durchblicken und nicht nur man selbst.
Übertreiben sollte man's im Forum aber nicht mit dem Chaos, denn da sollen ja andere durchblicken und nicht nur man selbst.
-
- Mitglied
- Beiträge: 19
- Registriert: 13.05.2007 10:59
- gn#36
- Ehrenadmin
- Beiträge: 9313
- Registriert: 01.10.2006 16:20
- Wohnort: Ganz in der Nähe...
- Kontaktdaten:
Der Switch funktioniert entweder überall oder gar nicht.
Aufpassen musst du allerdings wenn du ihn innerhalb eines anderen Blocks verwendest:
funktioniert so ohne weiteres nicht unbedingt, hierfür ist in der passenden PHP Datei eine Zeile notwendig:
Dieser "Switch" ist in Wirklichkeit nämlich nichts anderes als eine missbrauchte Schleife und unterliegt daher den gleichen Regeln (KB:template_system, KB:template_syntax).
Aufpassen musst du allerdings wenn du ihn innerhalb eines anderen Blocks verwendest:
Code: Alles auswählen
<!-- BEGIN block_x -->
<!-- BEGIN switch_user_logged_out -->
<!-- END switch_user_logged_out -->
<!-- END block_x -->
Code: Alles auswählen
$template->assign_block_vars('block_x.switch_user_logged_out',array());
Begegnungen mit dem Chaos sind fast unvermeidlich, Aber nicht katastrophal, solange man den Durchblick behält.
Übertreiben sollte man's im Forum aber nicht mit dem Chaos, denn da sollen ja andere durchblicken und nicht nur man selbst.
Übertreiben sollte man's im Forum aber nicht mit dem Chaos, denn da sollen ja andere durchblicken und nicht nur man selbst.
-
- Mitglied
- Beiträge: 19
- Registriert: 13.05.2007 10:59
Habe deine Antwort leider erst heute endeckt, aber das ist tatsächlich ein Teil des Problems.
Gut, es geht darum in viewforum.php etwas zu ergänzen. Die Stelle, an der ich den Switch benutzen will, steht zwischen <!-- BEGIN topicrow --> und <!-- END topicrow -->.
Interpretiere ich deinen Post richtig, müsste ich dann doch in viewforum.php folgende Zeile ergänzen (mit leerem Array):
Die habe ich unmittelbar nach
eingefügt.
Im viewforum-Template habe ich dann den Code zwischen <!-- BEGIN switch_user_logged_out --> und <!-- END switch_user_logged_out --> eingefügt. Leider wird der Text dazwischen aber immer noch unabhägig vom Login-Status des Benutzers angezeigt.
Habe ich grundsätzlich das Konzept richtig verstanden? Sieht jemand, warum es noch nicht funktioniert?
Gut, es geht darum in viewforum.php etwas zu ergänzen. Die Stelle, an der ich den Switch benutzen will, steht zwischen <!-- BEGIN topicrow --> und <!-- END topicrow -->.
Interpretiere ich deinen Post richtig, müsste ich dann doch in viewforum.php folgende Zeile ergänzen (mit leerem Array):
Code: Alles auswählen
$template->assign_block_vars('topicrow.switch_user_logged_out',array());
Code: Alles auswählen
$template->assign_block_vars('topicrow', array(...));
Im viewforum-Template habe ich dann den Code zwischen <!-- BEGIN switch_user_logged_out --> und <!-- END switch_user_logged_out --> eingefügt. Leider wird der Text dazwischen aber immer noch unabhägig vom Login-Status des Benutzers angezeigt.
Habe ich grundsätzlich das Konzept richtig verstanden? Sieht jemand, warum es noch nicht funktioniert?
- gn#36
- Ehrenadmin
- Beiträge: 9313
- Registriert: 01.10.2006 16:20
- Wohnort: Ganz in der Nähe...
- Kontaktdaten:
Bei der Reihenfolge in der du die beiden anordnen musst vertue ich mich immer, die ist nicht gleichgültig.
Wenn du das aber genau so eingefügt hast ist da zusätzlich ein konzeptioneller Fehler drin: Du prüfst gar nicht ob die Bedingung zutrifft bevor du den Switch setzt.
Du brauchst also eher so eine Konstruktion:
Wenn du das aber genau so eingefügt hast ist da zusätzlich ein konzeptioneller Fehler drin: Du prüfst gar nicht ob die Bedingung zutrifft bevor du den Switch setzt.
Du brauchst also eher so eine Konstruktion:
Code: Alles auswählen
if($userdata['user_id'] == ANONYMOUS || !$userdata['session_logged_in'])
{
$template->assign_block_vars('topicrow.switch_user_logged_out', array());
}
Begegnungen mit dem Chaos sind fast unvermeidlich, Aber nicht katastrophal, solange man den Durchblick behält.
Übertreiben sollte man's im Forum aber nicht mit dem Chaos, denn da sollen ja andere durchblicken und nicht nur man selbst.
Übertreiben sollte man's im Forum aber nicht mit dem Chaos, denn da sollen ja andere durchblicken und nicht nur man selbst.
-
- Mitglied
- Beiträge: 19
- Registriert: 13.05.2007 10:59
VIELEN DANK, DU BIST MEIN RETTER!
Ich habe das genau wie von dir notiert direkt vor
eingefügt und jetzt funzt es!
Ich habe das genau wie von dir notiert direkt vor
Code: Alles auswählen
// Parse the page and print