Plugins in Joomla sind eine feine Sache. Mit ein paar Zeilen Code lässt sich das Verhalten des Systems beeinflussen, lassen sich weitere Inhalte einbinden und zb. neue Authentifizierungsmethoden integrieren. Nicht umsonst sind Plugins sowohl bei Nutzern als auch Entwicklern beliebt, lässt sich doch damit die eigene Seite erheblich aufwerten.
Auch mehr und mehr Komponenten führen Plugins aus, um eben dem Nutzer die Möglichkeit zu geben, die Funktionalität einfach zu erweitern. Wer EventList einsetzt kennt das vielleicht schon und nutzt es selbst um Konzertkarten zu verkaufen, Photoalben oder Bookmarkservices einzubinden. Unter bestimmten Umständen kann das jedoch recht eklig nach hinten losgehen.
Ein gut geschriebenes Plugin stellt sicher dass die Klassen die es braucht auch verfügbar sind. Wenn nicht, bricht es die weitere Ausführung von sich selbst einfach ab. Leider sind viele Plugins dahingehend geschrieben, dass automatisch angenommen wird, dass diese nur in com_content verwendet werden und andere Komponenten den onpreparecontent Event nicht nutzen. Tun sie es doch, wie z.B.: EventList, wird der Webmaster meist freundlich mit einer komplett weißen Seite empfangen. An diesem Punkt ist dann meist die Komponente schuld und fehlerhaft. Würde der geneigte Webmaster erst lokal und nicht auf dem Produktivsystem seine Seite aufbauen wäre zu 90% display_errors aktiviert und er würde die Ursache des Fehlers sofort erkennen können.
Ein Beispiel eines solchen Plugins gefällig?
- Ein recht beliebtes und eigentlich auch gut geschriebenes Plugin leistet sich folgenden Faupax:
$date = new JDate( $regDate );
Es geht einfach davon aus dass die Klasse JDate immer verfügbar ist. Nun, ist sie aber eben nicht immer und es kracht. Simple Lösung: und schon mach das nette Stück was es soll und das jetzt auch überall.
Solche Plugins sind natürlich nicht nur für den Webmaster lässtig, er hat sie ja meist nicht ohne Hintergedanken installiert und würde sie gerne nutzen. Auch für Komponentenentwickler ist das ärgerlich, wird doch meist angenommen dessen Komponente würde die Seite fressen. Aber jener hat nur eingeschränkt darauf Einfluss, er könnte schlicht und einfach Plugins in seiner Komponente nicht unterstützen und damit auch alle Vorteile und Möglichkeiten welche jene bieten dem Webmaster vorenthalten. Nicht gerade ideal, man muss wohl in den sauren Apfel beissen und das durchstehen bis die Nutzer den Pluginentwicklern die Füsse wundgetreten haben. Denke spätestens dann haben auch die hartnäckigsten verstanden dass Plugins nicht nur für com_content da sind.
danke für den Tipp, übrigens betrifft jenes Problem durchaus auch Module, wie z.B. placehere, das Contentitems auf Modulpositionen erlaubt, wenn Komponenten wie Mad4Joomlas Mailforms dazwischen funken.
Viele Entwickler programmieren allzu schlamping, wenn es um valides XHTML und Template-Adaption geht. Mit etwas Aufwand kann man aber Wunderbares selbst herstellen, um vom Blogging zum CMS zu kommen.
Viele Entwickler programmieren allzu schlamping, wenn es um valides XHTML und Template-Adaption geht. Mit etwas Aufwand kann man aber Wunderbares selbst herstellen, um vom Blogging zum CMS zu kommen.