Ist es möglich, Plugins irgendwie programmgesteuert zu installieren? Also kann ich meinem Client eine Datei schicken, die sie entpacken, zu einer installplugins.php-Datei gehen und die installiert + aktiviert sie? Der einzige Weg, den ich dafür gefunden habe, ist wirklich ranziges Lowlevel; Ich hoffe, jemand hier kennt bessere Methoden.
Programmgesteuertes Installieren und Aktivieren von WordPress-Plugins
KarlS
yuvilio
Aktualisieren
Heute verwende ich eine Shell-Schleife mit wp-cli zu installieren und aktivieren Sie die Plugins
Ursprüngliche Antwort
Zur Aktivierung verwende ich eine Variante davon. Angenommen, ich hätte drei Plugins, die ich aktivieren wollte (“cforms”, “w3-total-cache”, “wordpress-seo”). Die Konvention ist, dass ihr Verzeichnis und ihre Plugin-.php-Datei den gleichen Namen haben:
$wordpress_path = "/path/to/my/wordpress/install";
require_once( $wordpress_path . "/wp-load.php" ); //not sure if this line is needed
//activate_plugin() is here:
require_once( $wordpress_path . "/wp-admin/includes/plugin.php");
$plugins = array("cforms", "w3-total-cache", "wordpress-seo");
foreach ($plugins as $plugin){
$plugin_path = $wordpress_path."wp-content/plugins/{$plugin}.php";
activate_plugin($plugin_path);
}
-
Sorry für die späte Antwort, aber du hast geantwortet!
– KarlS
21. August 2011 um 10:55 Uhr
-
‘wp-content/plugins/{$plugin}.php’; sollte “wp-content/plugins/{$plugin}.php” sein;
– Hyster
27. Oktober 2014 um 14:53 Uhr
-
Gesehen und behoben. Vielen Dank!
– Yuvilio
27. Oktober 2014 um 14:55 Uhr
-
Einige Plugins verwenden einen anderen Namen für die primäre PHP-Datei als den Plugin-Namen. Weiß jemand, wie man den primären PHP-Dateinamen des Plugins extrahiert oder erkennt?
– Hans Desjarlais
22. September 2020 um 1:36 Uhr
- Plugin kopieren nach
/wp-content/plugins/
(Stammverzeichnis, wenn das Plugin nur eine Datei ist, ansonsten ein Unterverzeichnis). - Anruf
activate_plugin('/full/path/to/your/plugin/php');
Hier ist ein vollständiges Skript; gib wp-admin ein, gib ihm ein .php-Suffix und drücke es über curl.
<?php
define('WP_ADMIN', TRUE);
define('WP_NETWORK_ADMIN', TRUE);
define('WP_USER_ADMIN', TRUE);
require_once('../wp-load.php');
require_once( '../wp-admin/includes/admin.php' );
require_once( '../wp-admin/includes/plugin.php' );
activate_plugin("/full/path/to/my/plugin.php");
?>
Sieht so aus, als ob Sie Plugins in der Datenbank umschalten können: Tabelle wp_options -> Feld Optionsname -> aktive_Plugins.
Haben Sie den WordPress-Code gelesen? Es kann sehr hilfreich sein, zu überprüfen, was WordPress tut, wenn Sie auf die Schaltfläche “Installieren” klicken.
– Tomasz Wysocki
11. Juli 2010 um 5:34 Uhr