WPlize, Klasse für Optionen in WordPress

WPlize ist eine Klasse, die man frei nutzen darf und soll. Sie dient dem Zugriff auf die Tabelle options von WordPress und erleichtert das Anlegen, Ablegen, Holen und Löschen von Einstellungen zu Plugins oder Themes in der Datenbank, Tabelle options, von WordPress. Durch die Verwendung dieser Klasse werden Plugins und Themes performanter und sauber aufgebaut. Es wird pro Plugin oder Theme nur ein Eintrag in der Datenbank angelegt, mit Hilfe eines Array werden diese Daten dort hinterlegt und verwaltet.

Da der Titel nicht besser gelungen ist, hole ich gleich zu beginn mal ein wenig aus und erkläre was WPlize macht und wozu es gedacht ist.

WPlize ist eine Klasse, die man frei nutzen darf und soll. Sie dient dem Zugriff auf die Tabelle options von WordPress und erleichtert das Anlegen, Ablegen, Holen und Löschen von Einstellungen zu Plugins oder Themes in der Datenbank, Tabelle options, von WordPress. Durch die Verwendung dieser Klasse werden Plugins und Themes performanter und sauber aufgebaut. Es wird pro Plugin oder Theme nur ein Eintrag in der Datenbank angelegt, mit Hilfe eines Array werden diese Daten dort hinterlegt und verwaltet.
Viele Plugins legen sehr viele Daten ab, nur als Beispiel: das populäre Kontaktform-Plugin cforms legt ca. 60 Einträge ab, die damit auch sehr viele Aufrufe starten und die Last erhöhen.
Das muss nicht sein, den WordPress unterstützt im Standard das Nutzen von Arrays. Auch einzelne Einträge werden von WordPress über das interne Caching performanter gestaltet, allerdings ist dies nie so optimal wie ein Array für viele Einträge als viele Einträge in der Datenbank.

Die Lösung nutze ich schon seit geraumer Zeit und habe bisher jeweils neue Funktionen in meinen Plugins dafür abgelegt. In älteren Plugins habe ich die Vorgehensweise zum Teil noch nicht umgesetzt, bei entsprechenden Änderungen und Zeit wird dies aber passieren.

Durch eine Kommunikation mit Sergej Müller (bekannt durch sein Plugin wpSEO), dem ich diese Variante empfahl ist eine gemeinsame Arbeit entstanden, die Sergej dann gleich auf ein eigenständige Klasse erweitert hat, so dass es nun einfacher und mit viel weniger Code integrierbar ist.
Im ersten Wurf stand uns der Sinn nach einem Plugin, was den Zugriff aus anderen Plugins ermöglicht. Da wir aber glauben, dass es dann nicht zu einer Verbreitung kommt, habe wir diese Idee wieder verworfen und möchten die Klasse nun hier anbieten und stellen sie zum Nutzen frei.

Die Klasse stellt nicht die Funktionen von WordPress in Frage, sie nutzt diese ebenfalls. Sie macht es nur einfacher, dass Plugin- und Theme-Autoren einen performanteren Zugriff ohne viel Mühe haben. Die klassischen Funktion add_option, delete_option, get_option und update_option kommen trotzdem in den Funktionen der Klasse zum Einsatz.

Welche Möglichkeiten bietet die Klasse und wie bindet man sie ein?

Die Datei am besten in einem Unterordner eures Plugins oder Themes ablegen und via PHP einbinden.


if ( !class_exists('WPlize') ) {
	require_once('inc/WPlize.php');
}

Dadurch stehen dann die unterschiedlichen Zugriffe zur Verfügung und sollen anhand folgender Syntax ein wenig näher erklärt werden.
Dem Download liegt auch ein Readme-Datei bei, so dass Erklärungen und Beispiele auch dort zu finden sind.

  • Multi-Option initialisieren
    
    $WPlize = new WPlize(
                         'my_plugin',
                         array(
                              'my_key'   => 'my_value',
                              'your_key' => 'your_value'
                              )
                        );
    
  • Option updaten [Variante 1]
    $WPlize->update_option('my_key', 'simple_value');
  • Option updaten [Variante 2]
    
    $WPlize->update_option(
                           array(
                                 'my_key'   => 'my_value',
                                 'your_key' => 'simple_value'
                                )
                          );
    
  • Option auslesen
    $WPlize->get_option('your_key');
  • Multi-Option entfernen
    $WPlize->delete_option();

Download:










Ist die Arbeit nicht 1 Euro wert?
Jede Spende wird dankbar angenommen und ermöglicht das weitere Arbeiten an freier Software.
Möchtest du mehr oder anders spenden, so besuche meine Wunschliste.

Download als zip-Datei: class_WPlize.zip - 3 kByte

Historie

  • 26.09.2008 - Idee und Lösung
  • 09.12.2008 - update der Prüfungen

Kommentare sind geschlossen.