Plugins

Jack plugs 1/4" 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. Wie bereits im Kapitel Module beschrieben, ist es nicht möglich und auch nicht notwendig, Plugins in der Administration neu zu erstellen. Ein Plugin wird im Erweiterungsmanager installiert.

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. Sie authentifizieren sich mit Ihrem Benutzernamen und Ihrem Passwort, und Sie sind durch die Zugehörigkeit zu einer Berechtigungsgruppe autorisiert. Autorisation ist der Prozess, der sich an die Authentifizierung anschließt und überprüft, welche Berechtigungen im Einzelnen der authentifizierte Benutzer hat. Joomla! bietet Ihnen drei Möglichkeiten der Authentifizierung (siehe Abbildung 1).
Be careful with deactivating plug-ins. You must have at least one authentication plug-in enabled or you will lose all access to your site.

cocoate.com/de/node/6390

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.

Captcha

Captcha ist eine neue Funktion in Joomla 2.5. Ein Captcha ist ein Programm das herausfinden kann, ob ein Mensch oder ein Computer sich Zugang verschaffen will. Sie haben Captchas vermutlich schon gesehen, kleine, bunte Bilder mit einem verzerrten Text neben Registrierungsdialogen oder anderen Eingabefeldern. Captchas werden von vielen Websites benutzt um Mißbrauch durch bots oder automatisch arbeitenden Programmen, die Spam produziieren, abzuwehren. Kein Computerprogramm kann solche verzerrten Texte lesen und deshalb können bots auf mit Captchas geschützten Seiten nicht navigieren.

Das plug-in benutzt Googles reCAPTCHA Service. Um einen öffentlichen und privaten Schlüssel für Ihre Domain zu bekommen, können Sie Ihre Website auf http://google.com/recaptcha registrieren. Um das Captcha in Joomla zu verwenden, müssen Sie es auswählen: Options - User Manager - Captcha – reCaptcha.

cocoate.com/de/node/10506

Abbildung 2: Captcha Plugin

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/10506

Abbildung 3: Inhalt-Plugins

Suchindex

Dieses Plug-in ermöglicht die Indizierung von Inhalten. Diese Funktion ist ebenfalls neu in Joomla 2.5 und die Basis für die Joomla Smart Search.

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. 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>
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.

Editoren

Der Joomla! Core  beinhaltet zwei Editoren (Abbildung 4). In Global Configuration - Site können Sie den Standardeditor für Ihre Website festlegen. Außerdem können Sie im User - Manager jedem Benutzerkonto Editoren zuweisen.

cocoate.com/de/node/6390

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. Es ist der Standardeditor in Joomla!.

Schaltfläche (Editors-xtd)

Die vier Editors-xtd-Plugins erzeugen die Schaltflächen unterhalb des Editorfensters (siehe Abbildung 5).

cocoate.com/de/node/6390

Abbildung 5: 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

Provides a button to enable a pagebreak to be inserted into an article. A pop-up allows you to configure the settings to be used. The plug-in has to be activated together with the Content - Pagebreak plug-in.

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.

Extension

Der Extension Plugin Typ wird für Aufgaben im Zusammenhang mit der Verwaltung von Erweiterungen benötigt.

Joomla

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

Finder (Suchindex)

Die Suchindex Komponente ist aus dem früheren Finder hervorgegangen. Deshalb heißt das Plugin noch so. Die Suchindex Plug-ins für Inhalte, Weblinks, Kontakte, Kategorien, und Newsfeeds können bei Bedarf aktiviert werden. Diese Plugins müssen aktiviert werden um Suchergebnisse aus diesen Bereichen zu bekommen. Wenn Sie zusätzliche Suchkomponenten installieren, dann müssen Sie die zugehörigen Plugins ebenfalls zur Verfügung stellen. (Abbildung 6).

cocoate.com/de/node/10504

Abbildung 6: Suchindex Plugins

Quickicons (Schnellstartsymbole)

Diese Plug-ins informieren Sie über verfügbare Updates von Joomla und Ihrer installierten third-party Erweiterungen. Sie werden gelistet in Site -> Control Panel.

cocoate.com/de/node/10506

Abbildung 7: Control Panel

Suche

Das sind Plugins für die "klassische" Joomla Suchkomponente. 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 (Abbildung 8).

cocoate.com/de/node/6390

Abbildung 8: Search Plug-ins

System

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

cocoate.com/de/node/10506

Abbildung 9: 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.

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.

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
2011-07-06 12:39:38 - 92.143.161.32 Joomla FAILURE: Empty password not allowed

Umleitung

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

Highlight

Dieses Plugin hebt spezifische Begriffe hervor und wird u.a. in der Smart Search Komponente verwendet.

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. Diese Funktion ist nur verfügbar wenn der Benutzer es per Klick in das Kästchen unterhalb des Login Formulars aktiviert.

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.

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.

Sprachcode

Dieses Plugin ändert im Quellcode der Site den Sprachcode und ermöglicht so Suchmaschinen die Site entsprechend zu identifizieren.

Benutzer

Benutzer Plugins beziehen sich auf benutzerspezifische Funktionen (Abbildung 10).

cocoate.com/de/node/6390

Abbildung 10: 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.