Plugins

Jack plugs 1/4"Dieses Kapitel kann noch gesponsert werden!


Ein Plugin erweitert in Joomla! meist die Funktionalität einer Komponente. Der Begriff Plugin taucht auch an anderen Stellen auf. Plugins werden beispielweise in einem Webbrowser genutzt, um Videos abzuspielen. Ein sehr bekanntes Beispiel für ein Plugin ist der Flash Player der Firma Adobe. Ein schönes Beispiel in Joomla! für den Gebrauch von Plugins ist die Suchkomponente. Fünf Such-Plugins arbeiten zusammen, um Inhalte aus unterschiedlichen Joomla!-Komponenten zu finden.

Joomla! hat acht Plugin-Typen: Authentication, Content, Editors-xtd, Editors, Extension, Search, System und User. Diese Bezeichnungen sind auch die Namen der Unterverzeichnisse, in denen sich die zugehörigen Plugin-Dateien befinden. Plugins vom Typ authentication liegen beispielsweise im Verzeichnis plugins/authentication. Es ist nicht möglich und auch nicht notwendig, Plugins in der Administration neu zu erstellen. Ein Plugin muss über die Erweiterungsverwaltung installiert werden.

Die deutsche Joomla! version Verwendet bei der Filterung der Plugins die englische Bezeichnung, in Überschriften und Plugin Namen dagegen eine übersetzte Bezeichnung. Ich werde daher in einigen Fällen die englische Bezeichung in Klammern anfügen.

Authentication

Authentication heißt auf Deutsch "Authentifizierung". In Joomla! ist damit der Prozess der Überprüfung gemeint, ob einem Besucher erlaubt wird, etwas auf der Website zu tun. Autorisation ist der Prozess, der sich an die Authentifizierung anschließt und überprüft, welche Berechtigungen im Einzelnen der authentifizierte Benutzer hat, etwas zu tun. Sie authentifizieren sich mit Ihrem Benutzernamen und Ihrem Passwort, und Sie sind durch die Zugehörigkeit zu einer Berechtigungsgruppe autorisiert. Joomla! bietet Ihnen drei Möglichkeiten der Authentifizierung (siehe Abbildung 1).
Seien Sie vorsichtig bei der Deaktivierung der Plugins. Sie müssen mindestens eins der Authentication-Plugins aktiviert haben, ansonsten können Sie sich nicht mehr auf Ihrer Website einloggen.

cocoate.com/de/node/6390Authentication-Plugin

Abbildung 1: Authentication-Plugins

Joomla!

Das Plugin Joomla! liefert das Standardverhalten von Joomla!. Sie füllen das Formular mit Ihrem Benutzernamen und dem Passwort aus, und es wird überprüft, ob der Benutzername existiert und das Passwort stimmt.

GMail

Wenn Sie das Plugin GMail aktivieren, können sich Benutzer mit ihrer Google-Mail-Adresse und ihrem Passwort an Ihrer Website anmelden. Eine vorherige Registrierung ist nicht notwendig. Bei der ersten Anmeldung erstellt das System-Plugin Joomla! ein Benutzerkonto in der Datenbank. Das Google-Mail-Passwort wird dabei verschlüsselt gespeichert. Durch diese Maßnahme ist es nicht möglich, die Google-Mail-Konten der entsprechenden Benutzer zu missbrauchen. Das Plugin macht den Anmeldevorgang für Ihre Benutzer einfacher. Leider gibt es keinen Hinweis im Anmeldeformular, dass eine Anmeldung mit Google Mail möglich ist. Sie können einen zusätzlichen Text hinzufügen, oder Sie überlegen sich eine andere kreative Lösung.

LDAP

Das Lightweight Directory Access Protocol (LDAP) ist ein Anwendungsprotokoll aus der Netzwerktechnik, um Daten aus einem Verzeichnisdienst zu lesen und zu aktualisieren. Es wird von Unternehmen benutzt, um beispielsweise die Abteilungszugehörigkeit und Telefonnummern der Mitarbeiter zu verwalten:

 dn: cn=John Doe,dc=example,dc=com
 cn: John Doe
 givenName: John
 sn: Doe
 telephoneNumber: +1 888 555 6789
 telephoneNumber: +1 888 555 1232
 mail: john@example.com
 manager: cn=Barbara Doe,dc=example,dc=com
 objectClass: inetOrgPerson
 objectClass: organizationalPerson
 objectClass: person
 objectClass: top

Um das Plugin für die Authentifizierung nutzen zu können, benötigen Sie Zugriff auf einen LDAP-Server (OpenLDAP), und Sie müssen das LDAP-Plugin mit den entsprechenden Daten konfigurieren. Auf joomla.org gibt es ein gutes Tutorial zum Thema: LDAP from Scratch.

Inhalt (Content)

Außer dem Joomla!-Inhalt-Plugin haben alle anderen Inhalt-Plugins etwas mit dem Text zu tun, den Sie innerhalb Ihres Beitrags erstellen (siehe Abbildung 2). Das Modul Eigene Inhalte kann diese Plugins ebenfalls nutzen.

cocoate.com/de/node/6390Content-Plugins

Abbildung 2: Inhalt-Plugins

Joomla!

Das Plugin Joomla! hat zwei Aufgaben:

  1. Wenn Sie eine Kategorie löschen wollen, überprüft es, ob diese Kategorie leer ist. "Leer" heißt, dass keine Beiträge und Unterkategorien dieser Kategorie zugeordnet sind. In den Basis Optionen können Sie diese Überprüfung ausschalten.
  2. Wenn ein neuer Beitrag über das Frontend eingegeben wird, sendet dieses Plugin eine E-Mail an alle Benutzer, bei denen der Schalter System-E-Mails erhalten auf Ja steht (Benutzer Bearbeiten). In den Basis Optionen können Sie diese Überprüfung ausschalten.

Modulpositionen laden

Das Plugin Modulpositionen laden lädt die HTML-Ausgabe aller Module, die einer bestimmten Template-Modulposition zugeordnet sind, in den Beitrag. Sie müssen nur {loadposition position-14} an die Stelle schreiben, an der die Module angezeigt werden sollen. Setzen Sie die gewünschte Position anstelle des Beispiels position-14 ein. Dieses Feature ist beispielsweise interessant, wenn Sie Werbebanner in den Inhalt einfügen wollen.

E-Mail Verschleierung (Email Cloaking)

Das Plugin E-Mail Verschleierung verwandelt eine E-Mail-Adresse (name@example.com), die in einem Beitragstext steht, in einen Link und verschleiert sie im Quellcode mithilfe von JavaScript. Das hat den Vorteil, dass E-Mail-Sammelprogramme diese E-Mail nicht einfach erkennen können.

Code Hervorhebung (GeSHi)

Das Plugin GeSHi ermöglicht Code Hervorhebung (Syntax-Highlighting) und erzeugt eine beeindruckende Darstellung von Programmlistings auf Ihrer Website. Sie müssen den darzustellenden Code innnerhalb von <pre xml:lang="php"> </pre>-HTML-Tags formatieren.

<pre xml:lang="php">
if ($number > 0)
{
  echo $number;
} 
else{
  $number++;
}
</pre>

Seitenumbruch

Das Plugin Seitenumbruch kümmert sich um Seitenumbrüche in Beiträgen. Außer einem einfachen Seitenumbruch können auch unterschiedliche Überschriften und Inhaltsverzeichnisangaben in einem Dialog definiert werden. Der Seitenumbruch wird im Editorfenster als einfache horizontale Linie dargestellt. Im HTML-Code sieht die Zeile folgendermaßen aus:

<hr title="Page Title" alt="Table of Contents Alias" class="system-pagebreak" />

Das Plugin muss gemeinsam mit dem Editor-xtd - Seitenumbruch-Plugin (Schaltfläche) aktiviert sein.

Seiten Navigation

Das Plugin Seiten Navigation fügt mehrseitigen Beiträgen eine Navigationszeile hinzu.

Bewertung

Das Plugin Bewertung fügt eine Bewertungsfunktion für Beiträge hinzu

Schaltfläche (Editor-xtd)

Die vier Editors-xtd-Plugins erzeugen die Schaltflächen unterhalb des Editorfensters (siehe Abbildung 3). Das Wort Editor-xtd steht für Editor extended und wird beim Filter verwendet.

cocoate.com/de/node/6390Editors-xtd-Plugins

Abbildung 3: Editor-xtd-Plugins

Beiträge

Das Plugin Beiträge blendet den Button Beiträge unterhalb des Editorfensters ein. Nach einem Klick auf den Button erhält man einen Dialog, in dem man aus vorhandenen Beiträgen den gewünschten Beitrag auswählen kann. Der Titel des Beitrags wird dann als Link in den aktuellen Beitrag übertragen.

Bild

Das Plugin Bild blendet den Button Bild unterhalb des Editorfensters ein. Nach einem Klick auf den Button erhält man einen Dialog, der es ermöglicht, vorhandene Bilder aus dem Medienbereich zu übernehmen, neue Bilder hochzuladen und zu übernehmen, sowie die Eigenschaften der Bilder zu konfigurieren.

Seitenumbruch

Das Plugin Seitenumbruch blendet den Button Seitenumbruch unterhalb des Editorfensters ein. Die Werte können über einen Dialog eingegeben werden. Das Plugin muss zusammen mit dem Plugin Inhalt - Seitenumbruch aktiviert werden.

Weiterlesen

Das Plugin Weiterlesen blendet den Button Weiterlesen unterhalb des Editorfensters ein. Durch einen Klick wird die Stelle, an der der Weiterlesen-Link erscheinen soll, an der aktuellen Cursorposition im Beitragstext eingefügt.

Editoren

Joomla! enthält im Standardpaket zwei Editoren (siehe Abbildung 4). In Konfiguration Site können Sie den Standardeditor für die Website bestimmen. Sie können innerhalb jedes Benutzerkontos diese Auswahl überschreiben und einen anderen Editor auswählen (Benutzer Bearbeiten).

cocoate.com/de/node/6390Editors-Plugins

Abbildung 4: Editor-Plugins

CodeMirror

CodeMirror ist eine JavaScript-Bibliothek, die auch als Editor für Inhalte, die im Quellcode vorliegen (wie beispielsweise HTML-Auszeichnungen in Ihren Beiträgen) genutzt werden kann. Das Plugin muss aktiviert werden, damit der Editor ausgewählt werden kann. Sie können das Verhalten des Editors in den Basis Optionen einstellen.

Keine

Das Plugin Keine muss aktiviert werden, wenn Sie die Wahl haben wollen, keinen Editor zuzuordnen.

TinyMCE

TinyMCE ist ein plattformunabhängiger WYSIWYG-Editor, der in vielen Projekten verwendet wird. Er ist standardmäßig aktiviert.

Extension

Die Extension Plugin-Typen stehen in enger Beziehung zur Verwaltung von Joomla!-Erweiterungen.

Joomla!

Das Plugin Joomla! verwaltet die Update-Websites für Erweiterungen, die den automatischen Update-Mechanismus unterstützen. 

Suche (Search)

Die Suche-Plugins für Inhalte, WeblinksKontakteKategorien und Newsfeeds können nach Bedarf aktiviert werden, wenn Sie Suchergebnisse aus den entsprechenden Komponenten haben wollen. Die Plugins dienen als Verbindung zwischen den genannten Komponenten und der Suche-Komponente. Wenn weitere Komponenten durchsucht werden sollen, müssen Sie die entsprechenden Such-Plugins installieren (siehe Abbildung 5).

cocoate.com/de/node/6390Search-Plugins

Abbildung 5: Suche-Plugins

System

System-Plugins setzen tiefer im Joomla! Framework an. Sie haben normalerweise Einfluss auf das Verhalten der gesamten Website (siehe Abbildung 6).

cocoate.com/de/node/6390System-Plugins

Abbildung 6: System-Plugins

Sprachen Filter

Das Plugin Sprachen Filter filtert die auf der Website angezeigten Inhalte abhängig von der gewünschten Sprache. Es funktioniert in Zusammenarbeit mit dem Sprachumschalter.

P3P-Richtlinien

Das Platform for Privacy Preferences Project (P3P) ist ein Protokoll, das Websites benutzen können, um anzugeben, was mit den personenbezogenen Daten passiert, die beim Besuch einer Website anfallen. Das Plugin erlaubt es Joomla!, einen einstellbaren Textstring mit P3P-Policy-Tags im HTTP-Header mitzuschicken. Diese Daten sind notwendig, damit Sessions in manchen Browsern (beispielsweise im Internet Explorer 6 und 7) korrekt funktionieren.

Cache

Das Plugin Cache ist für das Caching von Inhaltselementen zuständig. Sie können einstellen, ob Sie im Browser des Benutzers Seiten speichern wollen.

Debug

Das Plugin Debug ermöglicht die Debug-Funktion, die für Programmierer wichtig ist. Sie können einstellen, welche Informationen angezeigt werden sollen.

Log

Das Plugin Log erzeugt Logdateien. Sie können den Ort angeben, an dem diese Dateien gespeichert werden (Konfiguration → System → System Einstellungen).
Hier ist ein Beispiel für eine Logdatei (/logs/error.php):

#Version: 1.0
#Date: 2011-07-06 12:39:38
#Fields: date    time    level    c-ip    status    comment
#Software: Joomla! 1.7.0 RC1 [ Ember ] 28-Jun-2011 23:00 GMT     Empty password not allowed

Umleitung

Das Plugin Umleitung ermöglicht die Umleitungen, die in der Umleitungskomponente festgelegt werden.

Erinnerung

Das Plugin Erinnerung ist eine Methode, Zugriffsinformationen in einem Cookie im Browser des Benutzers zu speichern. Wenn Benutzer die Seite erneut besuchen, werden die Zugangsdaten in das Anmeldeformular eingeblendet.

SEF

SEF ist die Abkürzung für Search Engine Friendly (suchmaschinenfreundlich). Das Plugin SEF erzeugt die suchmaschinenfreundlichen Webadressen Ihrer Seiten. Das Verhalten kann in Konfiguration → Site → Suchmaschinen-Optimierung (SEO) angepasst werden.

Abmelden

Das Plugin Abmelden sorgt dafür, dass der Benutzer auf die Startseite umgeleitet wird, wenn er während des Abmeldevorgangs auf einer nur für bestimmte Benutzergruppen freigegebenen Seiten war.

Benutzer

Benutzer-Plugins umfassen immer benutzerspezifische Funktionen (siehe Abbildung 7).

cocoate.com/de/node/6390User-Plugins

Abbildung 7: Benutzer-Plugins

Profile

Das Plugin Profile bietet Ihnen die Möglichkeit, zusätzliche Profilfelder abzufragen, die in den Basis Optionen eingestellt werden können. Es ist möglich, es mit dem Plugin Kontakterstellung zu kombinieren, sodass automatisch ein Kontakt für jeden Benutzer erzeugt wird (siehe auch Benutzer und Berechtigungen).

Kontakterstellung

Mit dem Plugin Kontakterstellung können automatisiert Kontakteinträge für neue Benutzer erzeugt werden. Es arbeitet in Verbindung mit dem Profile-Plugin (siehe auch Benutzer und Berechtigungen).

Joomla!

Das Plugin Joomla! erzeugt nach der ersten erfolgreichen Authentifizierung einen Benutzer in der Datenbank.