zwei Standartseiten

  • Hallo ihr lieben,

    ist es möglich zwei Standartseiten für unterschiedliche Zugriffsebenen zuzuweisen? Die Zugriffsebenen "Gäste" und "Gruppe1 (eingeloggt)" können die Standartseite (Startseite) sehen.

    Wenn sich nur "Gruppe2" anmeldet, soll die Standartseite (Startseite) verschwinden und durch eine neue Standartseite ersetzt werden. In diesem Fall wäre das die Startseite von Jomsocial.

    Ich verwende Joomla 3.9.20

    Viele liebe Grüße und ein schönes Wochenende,
    Markus

  • Danke für deine Antwort!

    unter den anderen Menüpunkten habe ich versucht eine Standartseite einzurichten. Aber die Standartseite wird für alle Menüs übernommen, egal welches Menü ich bearbeite.

    Aktuell wird ein Menü verwendet. Das Menü ändert sich, nach Zugriffsebenen. Wenn sich also ein registrierter Benutzer anmeldet, verschwinden manche Menüpunkte.

    Wie kann ich denn ein Override für das genannte Beispiel erstellen? Und was gäbe es noch für Möglichkeiten? Ich probiere alles aus was ich finden kann. Nur leider konnte ich zu diesem Thema noch nichts finden.

    Viele Grüße und einen schönen Start ins Wochenende,
    Markus

    1. Gehe ins Backend zum Template (nicht styles)
    2. Editiere das Template
    3. Dort gibt es einen Reiter "Overrides erstellen"
    4. Wähle in der Spalte "Module" das Modul "mod_custom" aus
    5. dann wird dir in deinem aktuellen Template unter html/mod_custom eine Datei angelegt. Diese lautet entweder "default.php" wenn noch kein Override da ist oder hat ein Datums-Suffix, wenn schon ein Override da war.
    6. Klicke auf die Datei und benenne diese um in z.B. "redirect.php"
    7. Editiere den Code (siehe unten den Code)
    8. Speichere die Datei und lege dann ein neues Modul "Eigenes Modul" (Erweiterungen => Module) an
    9. Wähle in den Parametern unter "Menüzuweisungen" den normalen Home-Link (und nur auf den gewählten Seiten anzeigen), wähle bei Zugriffslevel die "Gruppe 2" aus (eventuell musst du extra für die eine neue Zugriffsebene anlegen in der Userverwaltung) und wähle im Reiter "Erweitert" unter "Layout" das "redirect" Layout aus.
    10. Auf eine Position deiner Wahl (die auf der Startseite verfügbar ist) setzen und speichern.
    11. Nun sollten User der "Gruppe 2" automatisch auf Joomsocial geleitet werden, wenn sie eingeloggt sind und auf "Home" klicken.

    Code:

    PHP
    <?php
    defined('_JEXEC') or die;
    
    $menuIdToRedirect = 111; // Hier die Menu ID des Joomsocial Eintrages eingeben (siehst du im Backend auf der rechten Seite in der Menuliste)
    
    JFactory::getApplication()->redirect(JRoute::_('index.php?Itemid=' . $menuIdToRedirect, false));

    (Disclaimer: ich habe den Code jetzt freihand geschrieben, also erstmal in einer Testumgebung testen.)


    Addon: das hier ist die "schnelle" Lösung. Alternativ könntest du auch ein Plugin schreiben, was den Home-Link für Gruppe 2 umsetzt, das wäre der elegantere Weg, benötigt aber ein bisschen mehr Programmierer-Wissen.

  • Bembelimen ich danke dir vielmals! Das hat geklappt und funktioniert wunderbar.

    Und ich musste ja etwas schmunzeln das Du mir zutraust, ein Plugin zu schreiben ^^ Sobald ich etwas Luft habe, werde ich mich damit beschäftigen und zum freien Download anbieten. Scheint ja noch eine Lücke zu sein.

    Viele liebe Grüße und danke für deine Hilfe,
    Markus

  • Nabend Bembelimen,

    kurze Nachfrage: Kann ich andere Gruppen b.z.w. Zugriffsebene auf die normale Startseite umleiten? Aktuell kann jeder https://www.deutsche-mitflugzentrale.de/desk sehen.

    Ich möchte aber das "Public" und "Gruppe 3" nicht auf /desk zugreifen können und automatisch auf die normale Startseite weitergeleitet werden. Es gibt aber Links zu veranstalltungen wo "Public" und "Gruppe 3" dennoch Zugriff drauf haben sollen. Die URL enthält allerdings /desk und sieht wie folgt aus:
    https://www.deutsche-mitflugze…/viewevent/paraballooning

    Lässt sich das mit dieser Vorgehensweise auch lösen?

    Viele liebe Grüße,
    Markus