WordPress Dropins

WordPress erlaubt das Ersetzen diverse Funktionen unter anderem mit den sogenannten Dropins. Die Liste der Möglichkeiten ist nicht sonderlich groß und doch wenig dokumentiert. Meine Erfahrungen und mein Wissen daher dazu in einem kurzen Beitrag.

WordPress und Plugins sind hinreichend bekannt und beliebt, bringen sie doch den Inhaber des Blogs in die Lage, das Blog an eigene Bedürfnisse recht einfach zu verändern und an eigenen Anforderungen anzupassen. Weniger bekannt sind Dropins.

WordPress erlaubt das Ersetzen diverse Funktionen unter anderem mit den sogenannten Dropins. Die Liste der Möglichkeiten ist nicht sonderlich groß und doch wenig dokumentiert. Insbesondere auf den Ersatz des Cache um Cache-Möglichkeiten des Servers zu nutzen, greife ich oft zurück. Dabei insbesondere APC und Memcache. Aber auch die Anpassung von Uploads, Permalinks und ähnliches sind ein typisches Scenario von Dropins.

Die Masse der Plugins müssen im WP Content Ordner abgelegt werden. Im Standard ist dies der Ordner wp-content oder er ist via Constant WP_CONTENT_DIR bzw. die URL in WP_CONTENT_URL definiert.
Beispiel:


// Custom content directory
define( 'WP_CONTENT_DIR',  dirname( __FILE__ ) . '/wp-content' );
define( 'WP_CONTENT_URL',  'http://' . $_SERVER['HTTP_HOST'] . '/wp-content' );

Dieses Vorgehen nutze ich beispielsweise in meiner Entwicklungsumgebung oder auch bei Kunden, da ich so bspw. auf Plugins via FTP getrennt zugreifen kann. Näheres und weitere Lösungen dazu findet man in meinem Starter auf Github.

Einzig Dropins, die mit dem Sprachschlüssel geladen werden, liegen nicht direkt in diesem Ordner, sondern im Standard in /wp-content/languages. Alternativ kann der Ordner via Konstante WP_LANG_DIR definiert werden.
Das Dropin für den deutschen Schlüssel folgt diesen Weg, nähres im Repo des Dropins zu finden.

Im Backend werden Dropins seit Version 3.0 von WordPress gelistet, allerdings nur die folgenden in der Tabelle und nicht das Dropin zum Sprachschlüssel. Ebenso kann mann es nicht via backend de-/aktivieren, was in einigen Fällen die Lösung via klassischem Plugin bevorzugt.

Im folgenden daher eine Tabelle alle Dropins, die ich kenne bzw. gefunden habe. Die möglichen Dropins werden über die Funktion _get_dropins() zurück gegeben.

Datei Type des Dropin Aktiv wenn Context
advanced-cache.php Erweiterter bzw. Alternativer Cache Konstante WP_CACHE ist TRUE Single & Multisite Installation
db.php Eigene Databank Klasse Immer Single & Multisite Installation
db-error.php Eigene Datenbank Fehler Meldung Beim DB Fehler Single & Multisite Installation
install.php Eigene Installationsroutine Bei der Installation Single & Multisite Installation
maintenance.php Eigene Wartungsmeldung Bei Updates, Wartung Single & Multisite Installation
object-cache.php Externer Object Cache Immer Single & Multisite Installation
sunrise.php Bevor die WP Multisite Installation lädt Wenn Konstante SUNRISE gesetzt Multisite Installation
blog-deleted.php Eigene Meldung, wenn ein Blog gelöscht wird Wenn ein Blog gelöscht wird Multisite Installation
blog-inactive.php Eigene Meldung, wenn ein Blog inaktiv gesetzt wird Wenn ein Blog inaktiv wird Multisite Installation
blog-suspended.php Eigene Meldung, wenn ein Blog eingestellt wird Wenn ein Blog als Archiv oder als Spam markiert wird Multisite Installation
$locale.php Funktionen bei aktivem Sprachschlüssel Wenn Sprachschlüssel in Konstante WP_LANG gesetzt Single & Multisite Installation

Kommentare sind geschlossen.