So speichert Ihr Plugin Daten in Bludit

Soll Ihr Plugin Daten speichern, so können Sie diese in der Flatfile-DB db.php des dazugehörigen Plugins dauerhaft speichern. Aktivieren Sie ein Plugin, zum Beispiel Banner, im Backend, so erzeugt Bludit die dazugehörige Datenbank db.php für dieses Plugin im entsprechenden Verzeichnis.

bl-content/databases/plugins/banner/db.php

Das Plugin Banner kann ab dem Zeitpunkt der Aktivierung individuelle Daten in diese Flatfile-DB ganz nach belieben speichern und später wieder auslesen und verarbeiten.

Gehen Sie dafür wie folgt vor. Initiieren Sie Ihr Plugin in der gewohnten Bludit-Plugin-Vorschrift mit eigenen Feldern wie im folgenden Beispiel:

...    ...
003    class pluginBanner extends Plugin {
004        public function init()
005        {
006            $this->dbFields = array(
007                'feld1' =>'',
008                'feld2' =>'',
009                'feld3' =>''
010            );
011        }
...        ...

Bludit legt für das Plugin Banner bei dessen Aktivierung in der db.php die drei Felder in folgendem Schema an:

{"feld1":"","feld2":"","feld3":"","position":1}

Einen Wert aus der Plugin DB lesen

Soll das Plugin die enthaltenen Werte in weiteren Methoden und Funktionen lesen, können Sie diese mit:

$this->getValue('feld1')

in Ihrem Plugin auslesen und weiter verarbeiten.

Einen Wert in die Plugin DB schreiben

Mit dem folgenden Code, können Sie auch Inhalt in ein solches DB-Feld schreiben:

$this->dbFields['feld1'] = 'neuer Inhalt';

um Veränderungen oder Vearbeitungen sitzungsübergreifend speichern zu können. Allerdings nur wenn Sie das Plugin deaktivieren und anschließend aktivieren. Ansonsten erfolgt die dynamische Speicherung über eine Form-Methode.

Hinweis: Aktivieren Sie das Plugin, wird der init() des Plugins ausgeführt und die Datenbank inklusive der Struktur als json-File erzeugt. Ändern Sie zwischenzeitlich das Plugin und die DB-Struktur, werden Sie keinerlei Änderungen in der Datei db.php sehen, erst wenn Sie das Plugin deaktivieren und erneut aktivieren erhalten Sie auch eine Struktur-Änderung in der db.php.


von Oliver Lohse