Umstellung der Zikula-Systemmodule für 2.0
Gegenwärtig werden die verbleibenden Systemmodule, die im Zikula Core enthalten sind, auf Twig und Symfony Forms umgestellt. Während Craig an den großen Brocken Users und Groups arbeitet, habe ich ein paar kleinere Module migriert, im Einzelnen Mailer, PageLock, Admin und Search. Als nächstes werde ich wohl das SecurityCenter angehen. Der Fortschritt an diesem Prozess kann in diesem Ticket verfolgt werden.
Jenkins mit GitHub-Integration, Pipelines und Multibranch Workflows
Gegenwärtig beschäftige ich mich mit zwei interessanten Punkten in Bezug auf Jenkins. Die neu gestaltete Website bietet dazu einen guten Einstiegspunkt.
Der erste Punkt dreht sich darum, Jenkins besser mit GitHub zu verzahnen.
Hier steht insbesondere eine engere Integration des Build Status im Raum. Die Nutzung von Service Hooks erlaubt es, einen Build via Push zu starten, was sowohl schneller als auch effizienter als das zeitbasierte Polling des Git-Repositories seitens Jenkins abläuft.
Zikula 1.4.2 ist verfügbar
Ende März wurde das zweite Service-Release für die 1.4-Reihe von Zikula veröffentlicht. Neben diversen Bugfixes wurden einige Systemmodule auf Twig und Symfony Forms umgestellt, wie etwa die Theme-, die Modul- und die Blockverwaltung. Alle Änderungen im Detail können im Changelog unter https://github.com/zikula/core/blob/1.4/CHANGELOG-1.4.md nachgelesen werden.
Zikula 1.4.1 wurde veröffentlicht
Frontend-Technologien in Zikula
Dieser Beitrag gibt einen Überblick über aus heutiger Sicht essenzielle Bibliotheken, mit denen das Frontend moderner Websites typischerweise realisiert werden. Diese sind weitgehend in Zikula enthalten, brauchen also nicht mehr dazu installiert zu werden.
Prototype & Script.aculo.us Prototype ist eine JS-Bibliothek, die sich zum Ziel gesetzt hat, die JavaScript-Entwicklung zu vereinfachen. Script.aculo.us baut auf Prototype auf und bietet zusätzliche Effekte, Funktionen und Animationen. Aus Gründen der Abwärtskompatibilität sind beide Bibliotheken noch in Zikula 1.
Templating-System erklärt
In Zikula wird eine „Templating-Engine“ verwendet, um Inhalt und Form voneinander getrennt zu halten. Dies bedeutet, dass der programmierte Quelltext, der eine bestimmte Funktion bereitstellt, woanders liegt als das Aussehen der entsprechenden Seite.
Dies ermöglicht es, dass sich Backend-Entwickler um die Implementierung kümmern, während Frontend-Entwickler die Oberfläche aufbauen und anpassen. Zum Frontend zählen im Wesentlichen das Markup (HTML), Client-seitige Skripte (JavaScript) sowie Stile (CSS).
Um eine Zikula-Seite zu gestalten oder zu verändern, muss kein Programmiercode angefasst werden.
Was hat Zikula mit Symfony und Doctrine zu tun?
In diesem Beitrag wird einmal grundlegend erklärt, wobei es sich um Zikula, Symfony und Doctrine handelt und wie diese Dinge zusammenspielen. Falls jemand diese Technologien nicht kennt, hilft dies vielleicht insbesondere beim Einstieg, sich unter der Masse von Begriffen zu orientieren.
Zikula Zikula ist ein Application Framework und dient somit als „Rahmen“ für beliebige Webanwendungen. Die wichtigste allgemeine Anlaufstelle für Zikula ist https://ziku.la/.
Seinen Ursprung hat Zikula in dem Vorgängerprojekt „PostNuke“, welches in den 90er Jahren sehr populär war und weltweit häufig verwendet wurde.
Zikula 1.4.0 “Overture” und 1.3.10 veröffentlicht
MySQL-spezifische Funktionen in DQL nutzen
Im Kern von Doctrine 2 wird Wert darauf gelegt, dass die Doctrine Query Language (DQL) möglichst portabel bleibt, damit Projekte einfach mit unterschiedlichen Datenquellen arbeiten können. Bei Webanwendungen kommt es immer wieder einmal vor, dass man eine bestimmte Funktion benötigt, die zwar in MySQL existiert, jedoch nicht von DQL unterstützt wird.
Man kann in solchen Fällen eigene DQL-Funktionen erstellen, dies ist aber in den meisten Fällen zum Glück nicht nötig. Denn in den DoctrineExtensions von Benjamin Eberlei befinden sich bereits eine ganze Reihe von MySQL-Funktionen.