Anmelden Modul mit Meldung "Kategorie nicht gefunden"

  • Joomla Version
    5.0.3
    PHP Version
    PHP 8.1.x
    Hoster
    my.cyon.ch
    Link (URL) zur Seite mit dem Problem
    fsvee.ch

    Es handelt sich um die Website des lokalen Schützenvereins. Für Interna (wie Mitgliederliste, Statuten, GV-Protokoll etc.) gibt es den Mitgliederbereich, zu dem nur Mitglieder einen "restricted"-Zugang haben. Das ist über das Modul "Anmelden" gelöst.

    Klickt man auf Anmelden, so erscheint das übliche Anmeldeformular. Ganz zuunterst erscheint eine rote Box mit der Inschrift "Kategorie nicht gefunden". Das kann jedermann anschauen, der auf der Domain fsvee.ch auf den Menüpunkt "Mitgliederbereich" klickt. Ich verstehe die Meldung, resp. deren Ursache nicht, denn ansonsten läuft alles perfekt. Alle Unterkategorien werden angezeigt.

    Im Menü "Mitgliederbereich" wird die Oberkategorie "Mitgliederbereich" als Menüeintragstyp "Alle Kategorien in einer Beitragskategorie auflisten" gewählt. Diese restricted Kategorie hat drei Links zu den Dokumenten "Mitgliederverzeichnis", "Statuten" und "Einsatzplan Bundesübungen". Unterkategorien der Kategorie "Mitgliederbereich" heissen "GV 2024", "GV 2023", "GV 2021", etc. Innerhalb dieser Unterkategorien gibt es dann wieder Links auf den jeweiligen Jahresbericht und das entsprechende GV-Protokoll.

    All diese Kategorien sind vorhanden. Was ist der Fehler, welche Kategorie sucht Joomla! 5, resp. wie beseitigt man die Message-Box "Kategorie nicht gefunden"

  • Da du einen Menüeintrag "Mitgliederbereich" erstellt hast welcher nur auf nicht öffentliche Beitrags-Kategorien führt kommt wohl diese Meldung.

    Diese Meldung kommt ja auch wenn man eine derartige Kategorie(id) per Komponente und entsprechendem view "direkt" aufruft:

    fsvee.ch/index.php?option=com_content&view=categories&id=3

    Lösungsmöglichkeit:

    Stelle diesen Menüeintrag "Mitgliederbereich" auf eine nicht öffentliche Zugriffsebene auf welche die gewünschten Mitglieder(Benutzergruppen) Zugriff haben z.B. eventuell Registered

    Erstelle anschließend einen weiteren Menüeintrag mit dem selben Titel "Mitgliederbereich", mit Alias "anmeldung", mit Menüeintragstyp Anmeldeformular und stelle dessen Zugriffsebene auf guest(Gast).

  • Lieber Sieger66

    Ich glaube, dass Du das Problem richtig analysiert hast. Es tönt für mich "vernünftig". Allerdings verstehe ich die Lösung nicht, da ich zu wenig Erfahrung habe. Ich kann natürlich das Menü Mitgliederbereich auf restricted setzen. Und ich kann ein weiteres Menü mit demselben Namen erstellen mit Zugriffsebene "guest". Warum nicht "public"? Zuletzt habe ich noch nicht verstanden, wo ich das Tab "Optionen" finde. Trotzdem schon einmal vielen Dank. Ich werde weiter untersuchen und dabei wahrscheinlich von "blutiger Anfänger" auf "blutgestillter Anfänger" wechseln.

  • Der Menüeintrag mit Zugriffsebene "guest" wird dann nur angezeigt solange man noch nicht angemeldet ist.

    ...wo ich das Tab "Optionen" finde...

    Ist eigentlich in meinem Linkziel in #4 ersichtlich wo das Optionen-Tab ist im Menüeintrag vom Menüeintragstyp Anmeldeformular...

    Das Bild vom Options-Tab ist dort allerdings veraltet.

    Der Hilfe-Button im Backend führt übrigens auch zur selben Stelle wenn du im Menüeintrag vom Menüeintragstyp Anmeldeformular bist und den sollte man insbesondere als Anfänger häufiger benutzen.

  • Lieber Sieger66

    Zuerst nochmals meinen aufrichtigen Dank für Deine Hilfe! Ich bin glücklich und habe das Problem gelöst.

    Als kleinen Dank für die im Forum erhaltene Hilfe möchte ich kurz nochmals meine Erfahrungen zusammenfassen, denn ich hatte zwar Erfolg, fühle mich aber trotzdem noch als "blutgestillter" Anfänger. Geschafft habe ich es durch systematisches Überlegen, aber in manchen Fällen musste ich systematisch ausprobieren, bis mir die Lösung gelang.

    Am Anfang stand mein Wunsch, das Anmeldeformular zu verstecken, bis jemand auf das Menü "Mitgliederbereich" klickt.

    Mein ursprüngliches Problem (siehe ersten Beitrag zum Thema): Beim Aufpoppen des Anmeldeformulars erschien auch die Message-Box "Kategorie nicht gefunden"

    (1) Sieger66 hat mich auf den richtigen Pfad gebracht mit der Verdoppelung des Menüpunkts "Mitgliederbereich". Hier ist es wichtig, dass das ursprüngliche Menü "Mitgliederbereich" und auch das Modul "Anmelden" auf "registered" gesetzt werden (waren bei mir auf "public"). Damit verschwindet das ursprüngliche Menü "Mitgliederbereich" im Vordergrund, da ja niemand angemeldet ist. Wichtig ist auch, dass das ursprüngliche Menü "Mitgliederbereich" als Menüeintragstyp "Alle Kategorien in einer Beitragskategorie auflisten" hat.

    (2) Das zusätzliche Menü "Mitgliederbereich" hat als Menüeintragstyp "Anmeldeformular" und ist auf "guest" gesetzt. Dieses Feature von Joomla hatte ich bis dahin nie verstanden. Es erlaubt, das "registered" Anmeldeformular zu sehen, so dass man sich an einem "registered" Anmeldeformular anmelden kann, obwohl man noch gar nicht angemeldet ist!

    (3) Im Anmeldeformular muss man nun noch spezifizieren, wie es nach dem Anmelden weiter geht. Unter dem Register "Modul" des Anmeldeformulars gibt man unter Anmeldung nun das "registered"-Menü "Mitgliederbereich" ein. Dadurch wird das "guest"-Menü "Mitgliederbereich" durch das "registered"-Menü "Mitgliederbereich" ersetzt, das ja jetzt sichtbar ist, weil man sich angemeldet hat.

    (4) Nächste Schwierigkeit: Der "registered"-Inhalt des Menüs "Mitgliederbereich" ist nicht sichtbar und es erscheint die Meldung "Keine Berechtigung um diese Ressource einzusehen". Man darf sich dadurch nicht irritieren lassen und muss noch auf das Menü klicken, damit der Inhalt sichtbar wird. Lösung: Im "guest"-Menü "Mitgliederbereich" unter der Registerkarte Optionen den "Anmeldeweiterleitungstyp" auf "Menüeintrag" umschalten und im Punkt "Menüeintrag für Anmeldeweiterleitung" das Menü "registered"-Mitgliederbereich wählen!

    (5) Letzte Schwierigkeit: Im Anmeldeformular hatte ich den Satz "Der Zugang ist beschränkt auf angemeldete Vereinsmitglieder!" unter Rubrik Modul als "Text davor" formuliert. Dieser Text erschien plötzlich nicht mehr. Keine Lösung, aber Workaround: Im "guest"-Menü "Mitgliederbereich" unter Rubrik Optionen unter "Beschreibungstext" "Der Zugang ist beschränkt auf angemeldete Vereinsmitglieder!" eintragen und "Anmeldebeschreibung" auf "Anzeigen" setzen.

    Das wars. Ich bin mir bewusst, dass erfahrene Joomla-Verwendet sagen werden, das ist ja alles klar! Ich habe das aber für hilfesuchende Anfänger wie mich geschrieben. Und wer trotzdem noch findet, das seien alles Platitüden ein kleiner Challenge: Bitte sehr, warum verschwindet der "Text davor" gemäss Punkt (5) oben. Ich weiss es auch nicht, aber ich höre gern den Experten zu.

  • ...warum verschwindet der "Text davor" gemäss Punkt (5) oben...

    Weil dieser Text von dir wohl im Modul "Anmelden"eingetragen wurde und dies Modul wird ja nicht mehr angezeigt und verwendet...

    Es gibt in Joomla zwei Möglichkeiten wie man sich im Frontend anmelden kann.

    Entweder über ein Modul oder über die Users-Komponente:

    https://fsvee.ch/index.php?option=com_users&view=login&Itemid=111

    Diesen Link siehst du übrigens auch im Menüeintrag "Mitgliederbereich" den du auf die Zugriffsebene "guest" gestellt hast und ähnlich im Linkziel von #4 im oberen Bild die Zeile Link.


    Übrigens, danken kann man hier im Forum auch einfach per klick auf den Button "Reagieren" am unteren rechten Ende jeden Postings den man nicht selbst erstellt hat.


    Die 111 in &Itemid=111 ist übrigens die id des Menüeintrages.

    Übrigens verwendest du oben in #7 fälschlicherweise den Begriff Menü gemeint wird von dir aber Menüeintrag.

    Übrigens anmelden im Frontend kann man sich auch ohne das entprechende Modul oder einen entsprechenden Menüeintrag zu nutzen.

    Einfach per direktem aufruf von:

    https://fsvee.ch/index.php?option=com_users&view=login


    Es fehlen bei dir noch viele Grundlagen bezüglich Joomla.

    Siehe z.B.:

    Rheinwerk Computing :: Joomla! 3 - Inhaltsverzeichnis

    Ist zwar für Joomla 3 geschrieben aber die Grundlagen sind zum Großteil identisch.


    Dein (3) in #7 ist übrigens falsch und missverständlich da man das Anmeldung-Modul für die Anmeldung gar nicht benötigt.

    Du könntest dieses vorhandene Anmeldung-Modul z.B. an Position "sidebar-left" veröffentlichen und auf eine nicht öffentliche Zugriffsebene auf welche die gewünschten Mitglieder(Benutzergruppen) Zugriff haben z.B. eventuell Registered einstellen.

    Wodurch dann nach der Anmeldung im Frontend ein Abmelde-Button von diesem Anmelde-Modul im Frontend an der Position "sidebar-left"ausgegeben und zu Verfügung gestellt wird.

    ...aber in manchen Fällen musste ich systematisch ausprobieren...

    Ja, das ist normal wenn man sich noch nicht auskennt und muß auch ich manchmal insbesondere bei seltenden oder ausgefallenen Fragestellungen...

    Gruß Sieger66. Fragen und Antworten zu Joomla in den Joomla-FAQ´s & How To´s :!:

    Die Suchfunktion im Forum ist dort: SUCHE und die Suche nach Tags dort: TAGS

    Einmal editiert, zuletzt von Indigo66 (5. März 2024 um 06:59) aus folgendem Grund: 3 Beiträge von Sieger66 mit diesem Beitrag zusammengefügt.

  • Lieber Sieger66

    Sensationell, was ich von Dir erfahre! Ich wundere mich, woher Du die Detailinformationen hast, z.B. ItemID=111 für den "guest"-Menüeintrag "Mitgliederbereich". Wo siehst Du das? Du bist ja nicht bei mir im Backend.

    Danke auch für den Buchtipp.

    Warum sagst Du, dass mein (3) in #7 falsch ist, Wenn ich das nicht tue habe ich plötzlich zwei Menüeintragungen "Mitgliederbereich" - zumindest hatte ich das zeitweise während meinen Versuchen. Wie würdest Du das lösen? Bitte sei mir nicht böse. Ich zweifle nicht an Deinem Knowhow. Ich möche nur auch einen Schritt weiter kommen (siehe Buchtipp!).

    Dann noch eine Frage: Warum sagst Du in #8, dass das Modul Anmelden nicht mehr angezeigt wird? Ich sehe es doch wenn ich den "guest"-Menüeintrag "Mitgliederbereich" anklicke. Es ist in meiner Modulliste. Ich rufe es doch als "guest" auf, indem ich den "Menüeintragungstyp" auf "Anmeldeformular" setze. Oder was passiert da?

    Kann sein, dass mir hier noch Verständnis fehlt.

  • ... woher Du die Detailinformationen hast, z.B. ItemID=111 ...

    Sieht man im Seitenquelltext der Website https://fsvee.ch/index.php/anmeldung bei:

    Code
    <body class="site com_users wrapper-static view-login no-layout no-task itemid-111 has-sidebar-left has-sidebar-right">

    Warum sagst Du, dass mein (3) in #7 falsch ist...

    ...Warum sagst Du in #8, dass das Modul Anmelden nicht mehr angezeigt wird? Ich sehe es doch wenn ich den "guest"-Menüeintrag "Mitgliederbereich" anklicke. Es ist in meiner Modulliste. Ich rufe es doch als "guest" auf, indem ich den "Menüeintragungstyp" auf "Anmeldeformular" setze.

    Da irrst du dich, du verwendest das Modul für die Anmeldung derzeit nicht mehr !!!

    Du kannst ja das Anmeldung-Modul z.B. löschen oder einfach auf den Status "versteckt" einstellen und wirst dann sehen das du dich weiterhin im Frontend anmelden kannst.

    Was verwendet wird sieht man übrigens auch im Quelltext z.B.:

    Code
      <div class="grid-child container-component">
                ...
                    <div class="com-users-login login">

    letzteres "kommt" z.B. von dort:

    github.com/joomla/joomla-cms/blob/5.0.3/components/com_users/tmpl/login/default_login.php#L29

    und würde von dort "kommen" wenn es vom Modul kommen würde:

    github.com/joomla/joomla-cms/blob/5.0.3/modules/mod_login/tmpl/default.php#L27

    Das ist aber für einen Anfänger wahrscheinlich noch zu verwirrend wenn wichtige Grundlagen fehlen.

    Siehe daher z.B.:

    openbook.rheinwerk-verlag.de/joomla_3/05_002.html#u5.2

    openbook.rheinwerk-verlag.de/joomla_3/10_002.html#i10_35

    openbook.rheinwerk-verlag.de/joomla_3/11_005.html#i11_28

    lesen und verstehen mußt du aber selbst.


    Eventuell für Anfänger auch noch interesstant ist, das durch das anhängen von tmpl=component an die URL, lässt sich auch nur die Ausgabe des Contents der jeweiligen im Menüeintrag festgelegten Komponente ausgeben.

    Siehe z.B.:

    https://fsvee.ch/index.php/anmeldung?tmpl=component

    oder identisches Ergebnis mit:

    https://fsvee.ch/index.php?option=com_users&view=login&Itemid=111&tmpl=component

    Da ist der Seitenquelltext dann auch gleich etwas übersichtlicher...

    Übrigens vieles wird in Joomla über die jeweiligen Menüeinträge gesteuert und festgelegt...

    Gruß Sieger66. Fragen und Antworten zu Joomla in den Joomla-FAQ´s & How To´s :!:

    Die Suchfunktion im Forum ist dort: SUCHE und die Suche nach Tags dort: TAGS

    2 Mal editiert, zuletzt von Indigo66 (5. März 2024 um 07:00) aus folgendem Grund: Ein Beitrag von Sieger66 mit diesem Beitrag zusammengefügt.

  • Lieber Sieger66

    Danke für die Erklärungen. Ich werde mir das Buch definitiv zulegen! Und ich werde auch das Modul Anmelden verstecken der sogar löschen (Ich habe mir ein Backup meiner Website gemacht und könnte also sogar einen fatalen einen Fehler wieder rückgängig machen).

  • Das Buch ist aber auch veraltet und Online komplett zugänglich.

    aus #8:

    Du könntest dieses vorhandene Anmeldung-Modul z.B. an Position "sidebar-left" veröffentlichen und auf eine nicht öffentliche Zugriffsebene auf welche die gewünschten Mitglieder(Benutzergruppen) Zugriff haben z.B. eventuell Registered einstellen.

    Wodurch dann nach der Anmeldung im Frontend ein Abmelde-Button von diesem Anmelde-Modul im Frontend an der Position "sidebar-left"ausgegeben und zu Verfügung gestellt wird.

  • Lieber Sieger66

    Ich habe Deinen Hinweis aufgenommen und versuchsweise das Modul "Anmelden" auf "versteckt" eingestellt. Der Anmeldeprozess ist dann unverändert und der "restricted"-Inhalt erscheint wie gewünscht. Allerdings verschwindet die Begrüssung und der Abmelde-Button. Kann es sein, dass Du genau das unter #12 gemeint hast?

    Falls ja, dann lasse ich es wie es ist, denn jetzt habe ich die Begrüsung und den Abmeldebutton an der Position "main-top", was gut aussieht. Und bei der Lösung #12 bin ich das Anmeldemodul ja auch nicht los.

    Das Buch ist online lesbar und als Hardcopy vergriffen. Ich habe es aber auf Ebay noch aufgetrieben.

  • ...Kann es sein, dass Du genau das unter #12 gemeint hast?

    So ist es!

    Ich dachte wenn das Modul an der Position "sidebar-left" veröffentlicht wird könnte man den Abmelden-Button z.B. auf allen weiteren Seiten dort belassen und die Benutzer können sich immer direkt abmelden, egal an welcher Stelle sie sich im Frontend auf der Website gerade befinden...

    Denkbar ist übrigens auch beide Varianten zu kombinieren z.B. per weiterem identischen Anmelde-Modul das an der Position "sidebar-left" unterhalb oder oberhalb des Menümoduls veröffentlicht wird und dann per Menüzuweisung überall gezeigt wird nur nicht beim Menüeintrag "Mitgliederbereich" vize versa die Menüzuweisung beim vorhandenen Anmelde-Modul im Modul im Tab"Menüzuweisung" entsprechend einstellen:

    help.joomla.org/proxy?keyref=Help50:Site_Modules:_Login&lang=de#Menu_Assignment_Tab

  • Noch eine mögliche Variante als Denkanstoß: Ich habe bei meinen Seiten meist noch ein Menü im Footer (also am Seitenfuß), wo ich Impressum, Datenschutzerklärung, Sitemap und Kontaktseite unterbringe, aber auch die Menüpunkte für Anmelden und Abmelden.

    Für nicht angemeldete Benutzer sieht das so aus:

    Für angemeldete dann so:

    Freundliche Grüße aus Wächtersbach, Rolf Dautrich