Frage

Was ist eine Plugin -Lebensdauer innerhalb einer bereitgestellten Instanz von WordPress?

Nämlich:

  • Ändern Plugins vorhandene Dateien oder verwenden sie nur definierte Erweiterungspunkte in WordPress?
  • Dürfen Plugins das Datenbankschema ändern (z. B. neue Spalten hinzufügen)?
  • Wie stellt WordPress sicher, dass das Plugin -Deinstallation immer WP im Originalzustand lässt? (Macht es?)
War es hilfreich?

Lösung

Kurze Antwort:

  • Plugins ändern keine vorhandenen Dateien, sondern über eine freiliegende API in WordPress.
  • Plugins können das Datenbankschema ändern.
  • Plugins müssen nicht sauber deinstallieren.

Pluginhaken

Plugins haken sich an einem bestimmten Punkt an, an dem der WordPress -Kern ausgesetzt ist.

http://codex.wordpress.org/plugin_api

Als Beispiel die Funktion get_option() liest eine Site -Option aus der Datenbank. Bevor wir in dieser Funktion echte Maßnahmen ergreifen, ruft WordPress auf apply_filters( 'pre_option_' . $option, false ). Bei einer Option foobar, Ein Plugin könnte den wahren Wert dieser Option mit dem folgenden Code überschreiben:

function override_foobar( $unused ) {
    return 'My custom value.';
}
add_filter( 'pre_option_foobar', 'override_foobar' ); // add_filter(hook, function)

Siehe auch http://adambrown.info/p/wp_hooks/.

Plugins, die die Datenbank ändern

Plugins können die Datenbank ändern, vorausgesetzt, der WordPress -Datenbankbenutzer verfügt über diese Berechtigung. Einige der komplexeren Plugins fügen ihre eigenen Tische hinzu. Es ist möglich, dass ein Plugin Kerntische ändern kann, und hoffentlich würden sie dies verantwortungsbewusst und auf eine Weise tun, die die Dinge nicht bricht, wenn das Plugin entfernt wird.

Dies muss auf Plugin-by-Plugin-Basis untersucht werden.

Plugins deinstallieren

Das deactivate_plugins() Funktion ruft die Aktion auf do_action( 'deactivate_' . trim( $plugin ) ). Ein Plugin sollte diese Aktion anschließen, wenn bestimmte Dinge auftreten müssen, wenn das Plugin deaktiviert ist. Nach meiner Erfahrung machen nur wenige Plugins viel Deaktivierungsreinigung, dh. Setzen Sie ihre Einstellungen in Kühlspeicher, falls sie erneut aktiviert werden.

Andere Tipps

Plugins in WordPress tun, was der Code sagt. Um speziell auf Ihre Fragen zu beantworten,

  1. Sie sollten es nicht, aber es hindert nichts, dass sie Kerndateien ändern.
  2. Sie dürfen in irgendeiner Weise, die WordPress selbst kann, vollständig mit der Datenbank verbinden.
  3. WordPress stellt nicht sicher, dass ein Plugin -Deinstallation die gesamte Installation nicht zerstört. Wenn ein Plugin -Autor die Deinstallationsfunktion festlegt, um alles zu löschen, würde dies dies tun.

Dies bleibt also die Frage: Was kann getan werden, wenn ein Plugin -Autor Ihr Vertrauen verrät und etwas bösartiges für Ihre Website macht? Die regelmäßigen Sicherungen Ihres WP-In-Content-Verzeichnisses sowie Ihre gesamte Datenbank sind der beste Weg, um sicherzustellen, dass Sie in der Lage sind, für den Fall, dass etwas mit Ihrer Website passiert (z. B. Datenverlust, Hackangriff, schlechtes Plugin usw.) .

Gerade Antwort: Nein

Plugins können alles tun, was Sie mit PHP -Code tun können.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit wordpress.stackexchange
scroll top