Ich kann keine Dokumentation oder Diskussion darüber finden, was Drop-In-Plugins sind und wie sie verwendet werden.
Die Frage wurde in dieser Frage und Antwort aufgeworfen: Inhalt bei Installation füllen .
Ist eine wp-content/install.php
Datei, die die steckbare Funktion neu definiert, wp_install_defaults
ein Drop-In-Plugin oder nicht?
Meine Forschungsergebnisse
Die folgende Liste stammt aus dem Artikel von hakre (der der Ursprung aller anderen Kopien in den Interwebs zu sein scheint) .
File Type of Plugin Loaded Context
advanced-cache.php Advanced caching plugin. on WP_CACHE value Single
db.php Custom database class always Single
db-error.php Custom database error message on error Single
install.php Custom install script on install Single
maintenance.php Custom maintenance message on maintenance Single
object-cache.php External object cache always Single
sunrise.php Executed before Multisite is loaded on SUNRISE value Multi
blog-deleted.php Custom blog deleted message on deleted blog Multi
blog-inactive.php Custom blog inactive message on inactive blog Multi
blog-suspended.php Custom blog suspended message on archived or spammed blog Multi
Source: Data taken from global function _get_dropins() in wp-admin/includes/plugin.php.
Im Codex ist ein Drop-In definiert als :
Die konkrete PHP-Datei
Zunächst steht nichts auf der Liste der [wp-Hacker]. Und die Suche nach „Drop-in + Wordcamp“ Ich habe nur fanden diese von Relevanz mein Schwerpunkt :
Eine der großen Stärken von WordPress ist das Plugin-System. In der kommenden Version 2.1 gibt es sehr wenig, was Sie als Drop-In-Plugin nicht tun können . Dies macht es einfach, WordPress als CMS zu verwenden und Ihre Anpassungen von der Hauptcodeline zu trennen. Dies wiederum vereinfacht Upgrades und Wartung.
quelle
wp-content/intall.php
sei kein Drop-In. Ich vertraute seinem Wissen und dachte, dass eine Frage nötig sei, um das zu klären. Wenn nicht, werde ich dies gerne löschen. Ich möchte kein anderes polemisches Thema erstellen.install.php
ein Drop-In?Antworten:
Um Ihre Frage zu beantworten: Ja
Tatsächlich gibt es viele andere Funktionen, die Sie in dieser Datei überschreiben können. Sie ist in der ersten Zeile von "wp-admin / includes / upgrade.php" enthalten und es gibt viele Funktionen, die überschrieben werden müssen
Leider sind nicht allzu viele Informationen zu Drop-In-Plugins verfügbar, aber ich werde versuchen, ein paar Punkte zu nennen
Zusammenfassend sind es PHP-Dateien, die fest codiert sind, um aufgenommen zu werden (falls vorhanden), wenn die entsprechende Funktionalität von WordPress geladen wird.
Um sie zu verwenden, erstellen Sie einfach eine PHP-Datei mit diesem Namen im Verzeichnis "wp-content" und sie wird automatisch aufgenommen. Diese Datei kann natürlich nach Bedarf eine beliebige Anzahl anderer Dateien enthalten.
BEARBEITEN
Wie toscho hervorhob, werden
1) Drop-Ins (falls verfügbar) zusammen mit allen anderen Plugins auch im WordPress-Admin-Bereich aufgelistet. Im Gegensatz zu anderen Plugins haben Sie nicht die Möglichkeit, sie von dort aus zu deaktivieren.
2) Wordpress ändert beim Upgrade selbst (Core-Upgrade) das Verzeichnis "wp-content" nicht. Aus diesem Grund ändern sich diese Plugins zwischen den Upgrades nie.
3) Sie können eine Konstante definieren
wp-config.php
, um das Verzeichnis "wp-content" in ein anderes zu ändern. Die Konstante, die Sie definieren müssen, istWP_CONTENT_DIR
. Dadurch werden auch die Standardeinstellungen für andere Konstanten wie das Plugins-Verzeichnis geändert, sodass Sie sich bei Bedarf auch darum kümmern müssenquelle
wp-config.php
.Wie
wp-content/install.php
funktioniert;Der WP-Installationsprozess wird ausgeführt
wp-admin/install.php
In Zeile 39 der Installation wird es ausgeführt
wp-admin/includes/upgrade.php
Diese Datei sucht dann zuerst nach einer vom Benutzer generierten Datei install.php. Wenn sie nicht gefunden wird, wird die Standardinstallation ausgeführt, wie in diesem Code dargestellt.
quelle
install.php
ein Drop-In sind oder nicht?mu-plugin
ich oben kommentiert habe. Entschuldigen Sie die Verwirrung. Ich denke, Mridul Aggarwal ist richtig.install.php