Was hat Zikula mit Symfony und Doctrine zu tun?

in  Basics  , , ,

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.

MySQL-spezifische Funktionen in DQL nutzen

in  Zikula Apps  , ,

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.

Vorträge für das Camp Zikula 2015

in  Verschiedenes  , , ,

Vorträge für das Camp Zikula 2015
Das diesjährige Camp Zikula wird Mitte Juli stattfinden. Mittlerweile liegen die wesentlichen Programmpunkte vor. In diesem Beitrag werden kurz die Beiträge genannt, die voraussichtlich von meiner Seite vorgestellt werden. Keynote / Core Wie in jedem Jahr wird über die wichtigsten Neuerungen rund um den Zikula Core berichtet. Dies betrifft dieses mal die Versionen 1.4 und 2.0; die Keynote wird von mir zusammen mit Craig Heydenburg vorgetragen. Multisites v2 Ein Einblick in die zahlreichen neuen Möglichkeiten, die sich mit der Version 2 des Multisites-Moduls bieten.

MUSeo 2.0.0 - kurze Vorschau

in  Zikula Apps  , , ,

MUSeo 2.0.0 - kurze Vorschau
Im Dezember haben wir über eine Erweiterung des MUSeo-Moduls im Hinblick auf vielfältigere SEO-Konfigurierbarkeit berichtet. Mittlerweile liegt nun, dank intensiver Unterstützung durch Gabriel Freinbichler, eine Vorabversion von MUSeo 2.0.0 vor, welche wir erfolgreich bei einem Kunden integriert haben. Wie bereits im ersten Artikel beschrieben, basiert diese Erweiterung im Wesentlichen auf einem SEO-Plugin für WordPress. Wir haben allerdings einige Funktionen weggelassen oder verändert, um die Funktionalität besser an Zikula anzupassen, da dort unterschiedliche Aspekte dynamischer gelöst oder bereits im Core gehandhabt werden.

Erweiterung des MUSeo-Moduls

in  Zikula Apps  , , ,

Erweiterung des MUSeo-Moduls
Das Modul MUSeo von Michael Ueberschaer ist eine ModuleStudio-basierte Lösung zum Erfassen von suchmaschinenrelevanten Metatags für beliebige Einzelseiten einer Zikula-Präsenz. Aktuell laufen die ersten Schritte für die Version 2.0.0 mit erweitertem Funktionsumfang. Neben einigen neuen Feldern und Angaben, z. B. für Social Media Funktionen, soll die kommende Hauptversion im Wesentlichen zwei neue Funktionen mitbringen: Erstens soll es möglich sein, direkt eine Vorschau der voraussichtlichen Darstellung des Eintrags der Seite in Google-Ergebnislisten einzusehen.

API-Dokumentation aufwerten - Enricher in phpDox

in  Builds & Tests  , ,

API-Dokumentation aufwerten - Enricher in phpDox
Wer seine Projekte regelmäßig mit einem Build-Server prüfen und testen lässt, erstellt oftmals auch eine API-Dokumentation. Dafür gibt es auch im PHP-Bereich eine Vielzahl unterschiedlicher Werkzeuge, beispielsweise PHPXref oder ApiGen. Dieser Beitrag stellt das Tool phpDox vor und gibt Einblick in das interessante Feature der Enricher. Eine API-Dokumentation stellt in der Regel eine navigierbare Übersicht der in einem Projekt vorhandenen Klassen, Schnittstellen, Methoden usw. bereit. Damit können Entwickler, die diese Artefakte in ihrem eigenen Code nutzen wollen, Informationen über die benötigten Methoden einsehen und so beispielsweise herausfinden, welche Argumente eine bestimmte Funktion erfordert.

Modulvariablen in Code und Templates nutzen

in  Basics  , ,

Modulvariablen in Code und Templates nutzen
Dieser Beitrag gibt eine kurze Einführung in die Verwendung von Modulvariablen. Diese können dazu verwendet werden, bestimmte Parameter in einem Modul einstellbar zu machen. Typische Beispiel hierfür sind etwa Grenzwerte oder API-Keys für Drittdienste. Nutzung im Code Die wichtigsten Grundfunktionen werden von Zikula durch die ModUtil-Klasse bereitgestellt. ModUtil::hasVar($modname, $name) ModUtil::getVar($modname, $name = '', $default = false) ModUtil::setVar($modname, $name, $value = '') ModUtil::setVars($modname, array $vars) ModUtil::delVar($modname, $name = '') Innerhalb von Klassen, die von Zikula_AbstractBase erben, zum Beispiel in Controller- und API-Klassen, gibt es außerdem Convenience-Methoden, die auf die oben genannten ModUtil-Methoden verweisen.

Capabilities in Zikula - Module austauschen für spezielle Szenarien

in  Zikula Apps  , ,

Capabilities in Zikula - Module austauschen für spezielle Szenarien
Wenn mehrere Zikula-Module zusammen arbeiten, wird dies in der Regel durch Modulabhängigkeiten ausgedrückt. Damit lässt sich festlegen, dass ein Modul A ein anderes Modul B entweder zwingenderweise voraussetzt oder optional empfiehlt. In größeren Systemen, die aus mehreren Modulen bestehen, reicht dies ab einem gewissen Punkt nicht mehr aus. Austauschbarkeit von Modulen gewährleisten Früher gab es in der Modultabelle von Zikula Flags für bestimmte Funktionen, zum Beispiel isProfile für Profilmodule und isMessaging für Module, die private Nachrichten verwalten können.

Worum geht es in diesem Entwickler-Blog?

in  Verschiedenes  , , ,

Worum geht es in diesem Entwickler-Blog?
Dieser Blog wird hauptsächlich über die Anpassung von Modulen für das Zikula-Framework berichten. Dabei werden zahlreiche Technologien verwendet, unter anderem Symfony, Twig, Doctrine, Bootstrap und jQuery. Eine Besonderheit ist, dass die Zikula-Module auf modellgetriebenem Wege realisiert werden. Modellieren – generieren – anpassen Meistens wird es in diesem Blog um Zikula-Module gehen, die mit dem MDSD-Werkzeug ModuleStudio modelliert und generiert wurden. Manchmal werden kleinere Tipps und Tricks vorgestellt, manchmal vielleicht etwas längere Tutorials und HowTos, die zeigen, wie wir bestimmte Anforderungen umgesetzt haben.