Last modified 4 years ago
Last modified on 29.12.2007 15:32:21
Hier ein wenig Dokumentation zum Aufbau der Plugins
Dateiorganisation
Die Plugins sind untergebracht in /plugins. Die Hauptklasse des Plugins muss den Namen der Klasse tragen und in einer index.php im gleichnamigen Ordner gespeichert werden.
Zum Beispiel simple_text:
/plugins/simple_text/index.php - darin
class simple_text { ... }
Die Sprachdateien? sind in einem weiteren Unterordner "lang" unterzubringen und tragen jeweils den Namen der Sprache (z.B. de_DE)
Pflichtmethoden
Um vom System aufgerufen werden zu können benötigt jedes Plugin einige Methoden. Dies wären:
- _construct($id,$resources) Beim Erstellen eines Plugins wird diesem seine ID übergeben (über diese ist das Plugin immer identifiezierbar), dazu ein Array mit den Ressourcen.
- show($page,$type,$param) ist die Funktion, die die eigentliche Seite (XML-formatiert) zurückliefert. Die Parameter sind die Seite (index/admin/etc.), die gerade angezeigt werden soll (entspricht der html-Datei im Aufruf z.b. /sandkasten/admin.html ist das Adminmenü des Sandkastens). $type ist der Typ des Platzhalters, in dem das Plugin angezeigt wird (standard,line,menu,sidebar...) - Damit nicht aus versehen ein komplexes Formular im Seitentitle auftaucht... $param werden evtl. die $_GET-Parameter sein, ist z.Zt. jedoch noch ungenutzt!
optionale Methoden
- title() erfragt den Seitentitel. Sollte ein Plugin den standard-Platzhalter füllen, so wird hier der Seitentitel abgefragt, der dann in der Browsertitelleiste erscheint. Diese Funktion hat keine Parameter.
- statement() erfragt den Sinn des Plugins, in einem Adminmenü wird dieser angezeigt, wenn man den Typ einer Seite auswählen kann.
- add_task() wird aufgerufen, wenn das System eine neue Seite dieses Plugins erstellt. (Die Plugininstanz wurde dann bereits mit der neuen Task-ID initiiert). Hier können Datenbankeinträge geschrieben werden etc...
- del_task() wird beim Löschen eines Plugins aufgerufen, dient dem Bereinigen einer Datenbank etc...
- install() wird vom System bei der Plugininstallation aufgerufen. Hier können Tabellen etc. erstellt werden.
return
Die Plugins müssen ein valides XML zurückliefern, aufgebaut wie folgt:
<? xml version="1.0" ?><content>beliebiger Inhalt</content>
