/dev/blog/ID10T

Wordpress: Plugins via Mysql deaktivieren

• Software • Comments
Advertisement

Im Zuge meiner Arbeit an Version 2 von Admins Werk hatte ich das Problem, dass bei der Aktivierung eines Plugins plötzlich weder die Seite, noch das Administrationsinterface erreichbar waren, sondern nur noch einen HTML-Statuscode 500: Internal Server Error. Da ich wie gesagt auch nicht mehr auf die Administrationsoberfläche zugreifen konnte, musste ich also das Plugin direkt in der MySQL-Tabelle abschalten.
Das lässt sich sowohl über PHPMyAdmin, als auch über die CommandLine machen.

CLI

Ich bin kein großer Fan von PHPMyAdmin oder anderen Webadministrationsoberflächen, deswegen habe ich es per MySQL-CLI gemacht. Folgende Schritte sind notwendig:

  1. Die CLI als ein Benutzer starten, der die Datenbank ändern darf, etwa der root-Benutzer.
    mysql -u root -p
  2. Die Wordpress-Datenbank auswählen, ich nenne sie mal wordpressdb
    use wordpressdb;
  3. Mit dem Befehl
     SELECT * FROM wp_options WHERE option_name = 'active_plugins';

    könnt ihr euch alle aktivierten Addons anschauen. Die Ausgabe könnte irgendwie so aussehen:

  4. Nun könnt ihr entweder alle Plugins deaktivieren oder den Versuch starten, einzelne Plugins zu abzuschalten. Um alle stillzulegen, führt diesen SQL-Befehl aus:
    UPDATE wp_options SET option_value = 'a:0:{}' WHERE option_name = 'active_plugins';

    Um nur einzelne Plugins zu deaktivieren, müsstet ihr den Plugineintrag in dem option_value-Wert von Semikolon zu Semikolon entfernen. Ich empfehle eine komplette Deaktivierung aller Plugins, da man dort weniger falsch machen kann und die Plugins später wieder im Adminmenü aktiviert werden können.

PHPMyAdmin

In PHPMyAdmin loggt ihr euch mit einem entsprechend berechtigtem Benutzer ein, wählt eure Wordpress-Datenbank und in dieser die Tabelle wp_options aus.

Nun sucht ihr entweder manuell oder über die Suche nach der Spalte mit dem Wert active_plugins in der Zeile option_name und bearbeitet diese.

Hier könnt ihr jetzt im option_value-Wert entweder alle Plugins deaktivieren oder einzelne. Um alle auszuschalten, ersetzt den in diesem Fenster stehenden Wert durch a:0:{}. Für das entfernen einzelner Plugins muss vermutlich der entsprechende Wert zwischen den Semikolons gelöscht werden, für den Wordpress Importer wäre das dann beispielsweise

i:13;s:41:"wordpress-importer/wordpress-importer.php";

Das Deaktivieren einzelner Plugins habe ich allerdings nicht getestet.

Jetzt sollte euer Blog oder eure Website wieder laufen und ihr solltet auch wieder ins Admin Interface kommen. Vergesst nicht, eure Plugins wieder einzuschalten, nachdem ihr das problematische Addon finden konntet.

Advertisement
More posts
comments powered by isso

Advertisement