Wofür ist der WordPress-WP-Includes-Ordner?

15

Wofür ist der WordPress-WP-Includes-Ordner? Das heißt, was ist der grundlegende architektonische Zweck davon, zum Beispiel warum ist es nicht alles in Themen oder einem Admin-Ordner?

Kann sich ein Plugin-Entwickler auf seine Inhalte verlassen (z. B. jQuery) und wie lange?

Ich würde auch gerne wissen, wer entscheidet, was da reingeht und wie es gepflegt wird, wenn sich Wordpress ändert. Ist dies alles irgendwo als Richtliniendokument dokumentiert?

Simon Gibbs
quelle

Antworten:

17

wp-includesenthält alles, was benötigt wird, um WordPress über das Frontend (und einige andere) auszuführen. Es ist das Territorium von WordPress Core, und, wie das Sprichwort sagt, ändern Sie Core unter keinen Umständen.

Während wp-contentPlugins und Themes definiert werden können, befinden sich die API selbst und die große Mehrheit des WordPress-Kerns in diesem Ordner. Diese werden von fast der gesamten WordPress abhängig. In diesem Ordner finden Sie alle Ihre Standardfunktionen und deren Abhängigkeiten.

Dies macht es zu einer wertvollen Ressource für Recherchen und Nachschlagen.

wp-admin kann zusätzliche Elemente definieren, ist aber für die Ausführung des Frontends nicht so wichtig

./wp-admin    - Admin code
./wp-content  - User-defined code and content
./wp-includes - Common files

Bezüglich der Zuverlässigkeit der Dateien in diesem Ordner sollten Sie sich nicht auf die Dateien in diesem Ordner verlassen. Sie sollten niemals eine Datei oder einen Pfad von wp-includes einschließen müssen, und wenn Sie versuchen oder müssen, dann haben Sie etwas schreckliches falsch gemacht und müssen anhalten und zurückgehen.

Während die Dateien in diesem Ordner ohne Vorwarnung ändern können, soll dies keine Rolle, da die darin enthaltenen API rückwärts für eine erhebliche Menge an Zeit kompatibel gehalten wird.

Außerhalb von Updates für WordPress wp-includessollten diese niemals geändert werden und sollten im Idealfall nur gelesen werden.

Wenn Sie Ihrem Code eine Abhängigkeit hinzufügen müssen, verlassen Sie sich auf die Versionen in wp-includes, anstatt Ihre eigenen hinzuzufügen. zB keine benutzerdefinierte jQuery einbinden, die mit WordPress mitgelieferte verwenden (nicht abmelden und auch nicht neu registrieren).

Änderungen an wp-includes können Sicherheitsrisiken, Leistungseinbußen, fehlerhafte Plugins / Themes usw. Verursachen

Änderungen an den Paketen und Bibliotheken enthalten sind, vor Releases angekündigt. Alte, nicht mehr benötigte Abhängigkeiten (z. B. der alte Farbwähler) werden beibehalten, aber als veraltet markiert, um Codefehler zu vermeiden

Tom J Nowell
quelle
5

Das wp-includesVerzeichnis enthält die Pakete, die in core enthalten sind . Das Kernteam pflegt die enthaltenen Pakete wp-includes. Themes und Plugins können sich darauf verlassen, dass diese Pakete für eine bestimmte Version von WordPress verfügbar sind.

Das ist ein großer Grund , warum es äußerst wichtig ist , nur einzureihen Kern-gebündelt Versionen von Skripten, die unter Verwendung von Kern -defined Skript Registrierung, wie zum Beispiel: wp_enqueue_script( 'jquery' ), damit Ihr Thema / Plugin wird immer die Version mit Kern gebündelt mit, egal was passiert Version von WordPress läuft.

Chip Bennett
quelle
3

Wordpress, als eine Anwendung, besteht aus mehreren beweglichen Teile enthält . Der /wp-includesOrdner enthält allgemeine Funktionen für die WordPress-API (die Sie in Themes / Plugins verwenden) und den WordPress-Administrator.

Also im Grunde genommen:

./wp-admin    - Admin code
./wp-content  - User-defined code and content
./wp-includes - Common files

In diesem /wp-includesVerzeichnis werden nützliche Bibliotheken von Drittanbietern (z. B. SimplePie für RSS und IncutioRPC für XML-RPC) gespeichert. Hier ist auch ein Großteil der WordPress-API (dh WP_Http, WP_Filesystem) definiert.

Kann sich ein Plugin-Entwickler auf seinen Inhalt verlassen? und für wie lange?

Ja. Diese Dateien definieren in erster Linie die WordPress-API. Das Kernteam unternimmt große Anstrengungen, um die Abwärtskompatibilität beizubehalten. Wenn also jemals Änderungen in WordPress vorgenommen werden, die Ihre Verwendung beeinträchtigen, wissen Sie dies bereits im Voraus.

Ich würde auch gerne wissen, wer entscheidet, was da reingeht und wie es gepflegt wird, wenn sich Wordpress ändert. Ist dies alles irgendwo als Richtliniendokument dokumentiert?

Entscheidungen für die WordPress-API werden vom Entwicklungsteam festgelegt. Sie können Änderungen normalerweise auf http://make.wordpress.org/core verfolgen . Bibliotheken werden immer gepflegt, da sich durch das Ändern dieser Bibliotheken auch WordPress ändert.

EAMann
quelle
Nicht die Dateien definieren die API, sondern die Funktionen und Klassen in diesen Dateien. Die Dateien werden möglicherweise verschoben oder verschwinden, ohne dass Änderungen an der API vorgenommen werden.
fuxia
0

wp-includesist das Verzeichnis, das die meisten Hauptfunktionen von WordPress enthält. Hier lebt der größte WordPress-Code.

WordPress leistet hervorragende Arbeit bei der Aufrechterhaltung der Abwärtskompatibilität zwischen Versionen. Mit den in diesem Ordner enthaltenen Funktionen können Sie Plugins erstellen (so binden Sie sich in das System ein).

WordPress Trac ist der Hauptbereich, der entscheidet, wie WordPress voranschreitet. Wenn Sie also Meinungen / Ergänzungen haben, engagieren Sie sich dort :)

Zach
quelle