Beiträge von pete_123

    Hallo JoomlaWunder,

    danke für die Antwort.


    Das habe ich ausprobiert und es funktioniert natürlich, wie Du es beschrieben hast.

    Dann fehlen mir aber die Kategorien (Kategorieliste) auf der Seite, die ich unbedingt brauche, da ich mit einem Klick auf eine Kategorie ein Modalfenster öffne, indem ich die Beiträge anzeigen lasse. Habe ich mehrere Beiträge einer Kategorie zugeordnet, werden diese im Modalfenster mit Seitennavigation angezeigt. Leider muss ich dann das Modalfenster verlassen, um zur nächsten Kategorie zu gelangen. Dies möchte ich halt vermeiden.


    Fällt Dir ein anderer Ansatz ein?

    Hallo und einen schönen Abend zusammen,

    ich seh den Wald vor lauter Bäumen nicht mehr.


    Ich habe auf meiner Joomla Seite ein Menü namens "Projekte" erstellt. Dieses ist als Menütyp Kategorieliste festgelegt worden. Diesem habe ich eine Kategorie namens Projekte zugewiesen, die wiederum mehrere Unterkategorien hat.

    Auf meiner Projekte Seite im Frontend werden mir nun alle Kategorien incl. der Unterkategorien aus der Kategorie Projekte dargestellt. (Mehr soll hier auf der Seite auch nicht erscheinen!!!). Bis hierhin klappt alles und ist nachzuvollziehen.

    Jeder Kategorie habe ich 1 Beitrag zugeordnet.

    Wenn ich nun auf auf der Seite auf eine verlinkte Kategorie klicke, so gelange ich zum entsprechenden Beitrag (auch dies ist so weit so, wie ich es mir vorstelle).

    Aus diesem Beitrag möchte ich nun direkt per "page-navigation" (Seitennavigation) auf den nächsten Beitrag der folgenden Kategorie wechseln. Dies ist aber nicht möglich, da er mir immer nur den einen Beitrag aus der jeweiligen Kategorie anzeigt und die folgenden Kategorien einfach ignoriert.


    Zum Veranschaulichen:


    Kategorieliste:

    Projekte -> Hauptkategorie

    Unterprojekt 1 -> Unterkategorie von Projekte -> Beitrag 1 (nur 1 Beitrag)

    Unterprojekt 2 -> Unterkategorie von Projekte-> Beitrag 2 (nur 1 Beitrag)

    Unterprojekt 3 -> Unterkategorie von Projekte-> Beitrag 3 (nur 1 Beitrag)


    Wo ist mein Denkfehler?

    Vielen Dank im voraus für Eure Zeit und Mühe.

    Liebe Grüße Pete

    Hallo Lukas,


    ich habe nun das Modul auf meiner ursprünglichen Seite komplett deinstalliert.

    Anschließend habe ich die gestern gezippte Datei des Accordion Moduls erneut installiert - es funktioniert.


    Das ist zum Haare ausraufen.


    Die komplett gleichen Einstellungen - Cache wurde gelöscht und dennoch hat es vorher keinerlei Auswirkungen gehabt.

    Das Javascript hat bei mir immer funktioniert, jedoch werde ich es nun für die Subkategorien anpassen müssen.


    Vielen, vielen Dank für Deine immensen Bemühungen. Du hast mir sehr geholfen.

    Hoffe, ich kann mich irgendwann mal mit einem Thema revanchieren.


    Liebe Grüße Pete

    Das ist ja sehr merkwürdig.

    Habe gerade darüber nachgedacht, ob es einen Unterschied macht, dass Modul direkt auf einer Position zu veröffentlichen, oder per "loadmodule" in einem Beitrag (so wie bei mir).

    Aus diesem Grund habe ich dieselbe zip Datei, die ich Dir geschickt habe auf einem anderen Test-Server direkt auf einer Position installiert - mit dem Erfolg, dass ich keinen Unterschied zu meiner anderen Seite sehe - es funktioniert nicht. Völlig unabhängig davon, ob die Kategorie 2 eine Unterkategorie von Kategorie 1 ist oder eine andere Hauptkategorie.

    Laufendes System auf beiden Serverinstallationen: Joomla 3.9.16 mit php Version 7.3.16

    Cache habe ich übrigens gelöscht.


    Du hast keine Anpassungen mehr vorgenommen und die zip Datei so eingesetzt wie Du sie im Download fandest?


    Jetzt habe ich es auf dem Testserver auch hinbekommen !!!


    Habe dort das Modul auf einer eigenen Position veröffentlicht (wie vorher), dann jedoch im Tab "erweitert" festgestellt, dass das "Layout" auf "default-original " eingestellt war. Dieses habe ich umgestellt auf "default" - und siehe da es klappt.


    Auf meiner ursprünglichen Seite habe ich dies selbstverständlich auch überprüft, dort ist unter "Layout" bereits "default" eingestellt. Jedoch ist der Unterschied dieser Seite zur Testseite, dass das Modul in einem Beitrag per "loadmodule" geladen wird. Auf dieser Seite klappt es weiterhin nicht.


    NEU::

    Auf der Testseite habe ich nun das Accordion in einem Beitrag per "loadmodule" eingebunden => auch das funktioniert.

    Warum also nicht auf meiner ursprünglichen Seite?

    Nein, beide hatte ich nie zeitgleich aktiv!

    Nur wenn die obere aktiv ist, startet das Accordion im Frontend, aber mit den falschen Einträgen.

    Wenn nur die untere aktiv ist, bleibt das Frontend weiss, dafür kann ich in der default.php die beiden Variablen korrekt gefüllt auslesen.

    Konnte leider nicht alle Dateien hochladen, da die Menge auf 10.000 Zeichen begrenzt ist. Hier nun die beiden fehlenden Dateien:


    Die Datei "_subitem.php" habe ich von Dir kopiert.

    Lukas, vielen Dank für Deine unglaublichen Bemühungen.

    Ich habe die von Dir angegebenen Codepassagen eingebaut.

    Meine Dateien sehen jetzt wie folgt aus:




    Die Datei "_subitem.php" habe ich von Dir kopiert.


    Nach wie vor ist im Frontend keine Veränderung zu erkennen.

    In der "helper.php" habe ich alternierend Zeile 59 auskommentiert. Der Effekt ist, dass bei aktiver Zeile das Frontend weiss bleibt (ohne Fehlermeldung), ich dafür aber in der "default.php" die Variablen "$list" und "$sub" richtig gefüllt auslesen kann.

    Ist diese Zeile 59 auskommentiert, ist das Accordion im Frontend zu sehen, aber die Subkategorie wird falsch ausgegeben.

    Es ist zum Verzweifeln.

    Habe mir die "_item.php" angeschaut, finde dort aber keinerlei Passagen, die ich ändern müsste.


    Zitat

    Dann stimmt in der Ausgabe etwas nicht. Wenn die Variable $sub korrekt befüllt wird, aber trotzdem die Titel der Hauptkategorie ausgegeben werden, dann stimmt daran etwas nicht. Ich denke mal, dass Du statt der Subkategorie, dann die Hauptkategorie ausgeben lässt.

    Die Ausgabe wird ja über die "default.php" bestimmt, die ich weiter oben angezeigt habe.

    Mir fällt nicht ein, wo ich diese noch weiter anpassen sollte ?!

    Danke Tom !


    @Lukas:

    habe Deine Vorschläge aufgegriffen und die Klasse geändert und registriert => kein Erfolg.

    Zudem habe ich mir das Frontend noch einmal mit den Firefox Entwickler-Werkzeugen angeschaut. Mein Ergebnis lautet wie folgt:


    HK
    SK Ergebnis
    1. Beitrag Hauptkategorie korrekt
    1. Beitrag Subkategorie falsch (1. Titel HK - Beitrag #1 HK )
    2. Beitrag Subkategorie falsch (2. Titel HK - Beitrag #1 HK)
    3. Beitrag Subkategorie falsch (3. Titel HK - Beitrag #1 HK)
    4. Beitrag Subkategorie falsch (4. Titel HK - Beitrag #1 HK)
    2. Beitrag Hauptkategorie
    korrekt
    3. Beitrag Hauptkategorie korrekt
    4. Beitrag Hauptkategorie korrekt

    Danke Lukas für Deine umfangreiche Hilfestellung.

    Bin leider erst jetzt wieder online.

    Werde mir das gleich in Ruhe anschauen und nachstellen.

    Melde mich dann wieder


    Leider funktioniert es so nicht.


    Folgendes habe ich ausprobiert:



    Meine mod_accordion.php hat weiterhin folgenden Code:

    Und meine Helper.php folgenden Code:



    Frontend zeigt folgendes:




    Die Hauptkategorie mit ihren 4 Beiträgen wird angezeigt. Die Subkategorie mit 1 Beitrag wird nicht angezeigt, statt dessen wird die Hauptkategorie wiederholt.

    Die helper.php ist identisch mit meiner....


    In der default.php werden beide Variablen ($list und $sub) geprintet und sind mit den richtigen Kategorien gefüllt.


    Die mod_accordion.php haben wir auch überprüft.


    Wer findet den Fehler?! thinking


    Jetzt gibt es aber keine Fehlermeldung, dafür bleibt die Frontend Seite weiss.


    Diese Zeilen in der helper.php verursachen einen Fehler:


    PHP
    // Category filter
            $model->setState('filter.category_id', $params->get('catid', array()));
            //$model->setState('filter.category_id', $my_catid);    

    Wenn ich die obere Zeile aktiviere erscheint folgendes Frontend:


    Es werden die Beiträge der 1. Kategorie angezeigt, anschließend werden sie in den grauen Buttons wiederholt, statt dass die Subkategorie angezeigt wird.


    Wenn ich vom obigen Code die erste Zeile deaktiviere und die zweite Zeile mit "$my_catid aktiviere, bleibt das Frontend leer.

    Die Variablen sind beide gefüllt !!!


    ja, danke für den Hinweise, habe ich nun auch abgeändert.


    Zitat
    Ich habe das bei mir nachgebaut und es funktioniert soweit.

    wie sieht Deine helper.php denn genau aus?

    Danke Lukas,


    Zitat

    hast Du denn die zweite Funktion auch in der mod_articles_news.php aufgerufen?

    Dort findest Du die Zeile

    $list = ModArticlesNewsHelper::getList($params);

    Genauso musst Du dann auch die zweite Funktion aufrufen:

    Ja, das hatte ich - leider ohne Erfolg.


    Sympathischer ist mir aber Dein Ansatz, beide Parameter in einer Funktion aufzurufen.


    Das werde ich jetzt ausprobieren und melde mich dann zurück.


    Bis später


    Meine helper.php sie nun wie folgt aus:


    Meine mod_accordion.php:



    Meine mod_accordion.xml:


    Und meine Default.php:



    Leider bekomme ich jetzt einen Fatal Error ausgewiesen?!

    Hallo Lukas,

    danke für Deine schnelle Antwort.


    In der "helper.php" aus der Joomla Core habe ich eine 2. Funktion eingebaut. Die native lautet public static function getList(&$params), wird mit "catid" angesprochen und meine hinzugefügte lautet public static function getSub(&$params), wird mit catid2 angesprochen.


    Oder habe ich Dich falsch verstanden?

    Der Übersicht halber versuche ich es hier noch einmal (sorry für die obige Darstellung:)


    Guten Abend zusammen,


    ich habe aus dem Core Modul "Mod_Articles_News" des aktuellen Joomla ein Accordion-Modul erstellt (der Name lautet "mod_accordion", welches die Beiträge einer im Modul ausgewählten Kategorie anzeigt: Die Titel des Beitrages werden im Frontend als Button Überschrift angezeigt und der Inhalt des Beitrages im Slider des Accordions.


    So weit so gut - es klappt alles (mit ein wenig Javascript aufgepeppt).


    Nun möchte ich jedoch auch die Möglichkeit eines verschachtelten Accordions (innerem Accordion) hinzufügen.


    Dazu habe ich in der "mod_accordion.xml" ein zusätzliches Feld eingefügt:



    Wie kann ich den Parameter des Feldes "catid2" ansprechen, dass dieser ebenfalls ausgegeben wird?


    Der php Code in meiner "default.php" sieht wie folgt aus:



    Die "helper.php" hatte ich ebenfalls erweitert um die "public static function getSub":



    Im inneren Bereich des Accordion werden jetzt aber leider lediglich die Beitragstitel (als Button) der äußeren Kategorie ausgewiesen (also quasi doppelt).



    Ich sehe momentan den Wald vor lauter Bäumen nicht mehr.


    Was übersehe ich?



    Vielen Dank für Eure Hilfe


    Liebe Grüße Pete