0251 / 590 837 15
info@a-coding-project.de
;

Aufbau ContentLion eines ContentLion-Plugin

Weiter geht’s mit den grundsätzlichen Eigenschaften und Möglichkeiten eines jeden ContentLion-Plugin eingehen. Dabei geht es um Speicher- und Namensräumen sowie die und Beschreibungsdatei.

Speicherorte

Jedes Plugin benötigt seinen eigenen Ordner. Dieser wird im Verzeichnis /system/plugins gespeichert. Klassen werden im Unterordner classes gespeichert.

Namensräume

Das Problem bei der Installation von mehreren Plugins ist, dass sie evtl. gleiche Klassennamen, gleiche CSS-Klassen oder IDs oder auch gleiche Tabellennamen (mit unterschiedlichen Aufbau) haben.

Aus diesem Grund gibt es in ContentLion feste Namensräume. Plugins sollten alle Namen, die außerhalb des Plugins erreichbar sind folgendermaßen aufbauen:d

Plugin_Pluginname_Klassenname

Für Skins gilt gleiches, nur mit Skin am anfang:
Skin_Skinname_Klassenname

Die Klassen können auf diese Weise ohne include benutzt werden. Sie werden von ContentLion automatisch aus dem classes-Verzeichnis geladen. Voraussetzung: die Datei heißt so wie die Klasse ohne „Plugin_Pluginname_“ und in kleinbuchstaben. Endung: .php.

Pluginbeschreibung

Die Pluginsbeschreibung wird unter Extras->Plugins angezeigt. Sie muss in der info.php im Pluginordner auftauchen:

<?PHP
  $pluginInfo = new PluginInfo();
  $pluginInfo->path              = "skinwizard";
  $pluginInfo->name              = "Skin Wizard";
  $pluginInfo->description       = "Tool zum erstellen 
                                   eigener Skins";
  $pluginInfo->authorName        = "Stefan Wienströer";
  $pluginInfo->authorLink        = "http://SteviesWebsite.
                                   de";
  $pluginInfo->version           = "1.0.0";
  $this->Add($pluginInfo);
?>

Ich denke der Aufbau der Datei ist selbstklärend.

Kommentare

ekle schrieb am 02.02.2011:

Bei vielen anderen CMS-Systemen kann man auch noch eine Lizenz angeben.

Julius schrieb am 02.02.2011:

Hallo, ich hab eine Frage: Kann es sein das ein Plugin egal ob es aktiviert ist oder nicht trotzdem angezeigt wird? Wenn ich z.B. den Updater deaktiviere erscheint er trotzdem noch im Dashboard.

Daniel schrieb am 03.02.2011:

Hi Stefan. Ich bin gerade dabei die SuFu zu entwickeln. Oder um es mal wie die Wollnys zu sagen. Ich bin gerade dabei am machen für die Suche. Ich hoffe das färbt jetzt nicht auf Leute ab die normalerweise hochdeutsch sprechen.

Stefan Wienströer schrieb am 03.02.2011:

@ekle: Hatte mir eher gedacht, die später auf der ContentLion.org Seite anzuzeigen. Aber deine Idee ist seht gut. Ich denke in die Richtung lässt sich was machen. Kommt auf die Todo ;-) @Julius: Die deactivate.php muss Code enthalten. Bei den mitinstallierten Plugins ist das noch nicht der Fall, wird aber noch kommen. Geht auch in die Todo ;-) @Daniel: Wusste beim Anfang deines Kommentares, nicht was du meinst. Bleib doch besser bei Hochdeutsch^^ Hast mal Lust mir deinen Plan zu schicken?

Daniel schrieb am 04.02.2011:

Viel ist noch nicht passiert. Das Formular ist erstellt und die DB wird in der Tabelle *_pages in der Spalte content nach dem Begriff durchsucht und die Ergebnisse werden angezeigt. Was jetzt noch fehlt ist die Umwandlung in einen Link zu den passenden Seiten und dér Einbau in das Template.