Erweiterte Einführung in die Programmierung für Joomla 4

  • Hallo alle zusammen,

    ich versuche gerade, mich in die Joomla-Programmierung einzuarbeiten. Leider kann ich zu Joomla 4 keine gute, zusammenhängende Anleitung finden. Die Beispiele der offiziellen Doku finde ich sehr unstrukturiert und auch ziemlich dünn, und Bücher hat seit 10 Jahren keiner mehr geschrieben. Da sich ja seit Joomla 4 einiges geändert hat, ist mein Weg gerade ziemlich steinig. Hat jemand noch ein paar gute Tipps, auch gerne die wesentlichen Unterschiede zwischen J3 und J4?

    Besten Dank,

    Holger

  • Siehe z.B. übrigens auch in den Anleitungen des Forums:


    Joomla Buch- und Blogsammlung in deutscher Sprache

    Danke für den Hinweis - das zeigt aber genau das Problem: Wenig Quellen bis keine Quellen zur Programmierung. Zu Joomla 4 habe ich nur das "Buch" von Astrid Günther gefunden, und das kann man nicht kaufen. Ich habe auf Ihrer Website jetzt immerhin den Kontakt-Link gefunden. Mich durch einzelne Blogartikel quälen tue ich jetzt schon seit Tagen, aber das ist mir alles zu unstrukturiert.

  • Joomla 4.x-Tutorial - Entwicklung von Erweiterungen - Der Weg zu Joomla 4 Erweiterungen
    Alle englischen und deutschen Texte dieser Reihe sind als PDF oder E-Pub verfügbar. Komponente Vorwort Die erste Ansicht im Backend Die…
    blog.astrid-guenther.de

    ist ja auch als PDF oder ePUB für eine Spende erhältlich.

  • Schwieriges Thema:


    Es kommt halt drauf an, was du programmieren willst. Für den praktischen Einsatz oder auf Professorniveau?


    Eine joomla-4-moderne Komponente im Vergleich zu Joomla 3 ist ein ganz anderes Kaliber als ein kleines Plugin oder Modul. Letztlich ändert sich aber auch bei letzteren beiden ständig was.


    Z.B. Core-Module sind mit kommendem Joomla 4.3. schon wieder anders aufgebaut als man das so kennt. Heißt nicht, dass die alten Varianten eines Module-Aufbaus nicht auch noch laufen und/oder der neue Aufbau nicht auch unter 4.2 läuft, aber halt nicht unter 4.1 oder 4.0.


    Man kann halt weitestgehend davon ausgehen, dass Erweiterungen, die man auf Stand 4.0/4.1 programmiert hat, auch noch auf höheren 4ern funktionieren (sollten).


    Vieles aber mit Sicherheit dann nicht mehr unter Joomla 5. Wenn man schon so weit blickt (so weit ist das übrigens gar nicht mehr, scheint es), wärs wahrscheinlich am Besten, immer "supermodern" zu programmieren und entsprechend nachzuarbeiten.


    Ich schaue täglich auf GitHub unter den PullRequests zu, um mich täglich zu wundern bzw. mich zu ärgern, warum ich mir so viel Mühe gemacht habe "Joomla-4-modern" zu sein, wenn dann so was z.B. kommt: https://github.com/joomla/joomla-cms/pull/39552/files . Stichwort "Provider" und "Dispatcher" und wo ganze Dateien, die man so kennt und lieben gelernt hat, verschwinden. Übrigens auch eine letztlich komplett undokumentierte Geschichte; außer, dass man eben im Joomla-Core sich Erweiterungen als Vorlagen anschaut.


    Zusätzlich kann man auch noch Joomla-3-4-kompatibel programmieren und das "halbmodern" und nicht ganz so veraltet wie im Joomla-3-Core zu sehen (weil der Core halt noch PHP5.3 unterstützen muss). Aber halt nur "halb". Für solche mache ich mir nicht die Mühe jeweils doppelt zu programmieren. Seit Joomla 3.9 war vieles möglich, was den gedanklichen Umstieg auf Joomla-4-Denke ""leichter"" machte. PHP-Namespaces z.B. Ja auch kein Muss, aber final eine praktische Angelegenheit.


    Hilft nur mit kleineren Projekten, Ideen anzufangen, die man immer mal wieder auffrischt, so wie ich jetzt für ein ganz simples Modul im JED, dass ich halt auf das "ultramodern" (für wie viele Tage wohl?) angepasst habe.

  • Hi Elwood, ich bin auch ein Freund von Learning by Doing. Es spart aber schon eine Menge Zeit und Frust, wenn man ein wenig Anleitung auf dem Weg hat und sich nicht alles bei Google und aus Foren zusammensuchen muß. :)

  • Danke für den umfassende Zusammenfassung. Dass Joomla 5 schon bald auf der Matte steht, war mir nicht bewusst - Joomla 3 gab es ja jetzt alles in allem fast 10 Jahre. Leider hält die Joomla-Doku offensichtlich nicht mit der Geschwindigkeit der Entwicklung Schritt. Ich versuche mal, das weiter im Auge zu behalten.

  • https://blog.astrid-guenther.d…zu-joomla4-erweiterungen/

    ist ja auch als PDF oder ePUB für eine Spende erhältlich.

    Danke für den Hinweis. Die Seite kannte ich, und auch die umfangreiche Einführung in die Erstellung einer Komponente. Nur dass das ganze tatsächlich als strukturiertes pdf existiert, dass man bei Astrid anfordern kann, war eine gut versteckte Information. Ich kämpfe mich da jetzt mal durch - das Buch ist tatsächlich Klasse. Ein anderes Buch, dass ich noch gefunden habe, und das abgesehen von einem nicht vorhandenen Lektorat die wichtigsten Themen super und kurz und knapp zusammenfasst, ist "Joomla for Developers" von Alex Manfield. Gibt es bei Amazon für nen 10er oder als für Prime Reading Mitglieder sogar für lau.

  • Leider hält die Joomla-Doku offensichtlich nicht mit der Geschwindigkeit der Entwicklung Schritt

    Die ist halt auch ein Werk von Freiwilligen. Auch Du kannst da reinschreiben, anpassen und korrigieren. Mein größtes Problem damit ist, abgesehen davon, dass sie halt blöd zu bearbeiten ist und mittlerweile ein ziemliches Durcheinander (ich wüsste gar nicht, wo ich ein neues Kapitel starten sollte, wenn...), dass die Beiträge erst in Englisch geschrieben sein müssen, bevor sie dann jemand mehr oder weniger vollständig übersetzt, wer auch immer. Halt irgendein anderer Freiwilliger oder man selber. Deshalb korrigiere und ergänze ich z.B. nur. Macht doch keinen Sinn mit meinem Radebrech-Englisch da über Stunden was zu schreiben, was ich auf Deutsch in 15 Minuten fertig hätte.


    Und bei Dingen, bei denen ich mir mühsam aus dem undokumentierten Code ableite, wie etwas wohl funktioniert, aber nicht, warum das so funktioniert und warum 3 "verquaste" Dateien nun besser sein sollen als zuvor eine, werde ich mit Sicherheit nicht anfangen, was zu schreiben.


    Dann gibt es eine Ecke, die als Basis für die Hilfeseiten im Backend dient. Die wird öfter mal aktualisiert. Ist aber eben nichts Weiterführendes, sondern nur rudimentär.


    manual.joomla.org leidet unter dem selben Problem. ein Blick hinein spricht Bände. Ich könnte zwar schreiben, wie ich was mache, aber das ist dann sicherlich nicht das, was "Best Practice" bedeutet.