it-swarm.com.de

Haken zur Aktivierung des Remote-Plugins

Ich aktiviere Plugins per Fernzugriff mithilfe von update_option('active_plugins,'some_plugins');. Es funktioniert einwandfrei, bis auf eines: Wenn einige Plugins mit register_activation_hook(__FILE__,'activate'); Tabellen erstellen müssen, werden sie nicht erstellt.

Wenn ich Plugins normalerweise in wp-admin/plugins.php aktiviere, funktioniert es einwandfrei. Irgendwelche Ideen, wie man diesen Aktivierungs-Hook per Fernzugriff ausführt, oder gibt es einen anderen Weg, um das Plugin besser zu aktivieren?

1
bigwolk

Verwenden Sie stattdessen activate_plugin():

activate_plugin( $plugin, $redirect = '', $network_wide = false, $silent = false )

Sie benötigen nur den ersten Parameter, den gleichen Wert wie in der Option.

Diese Funktion ruft die erforderlichen Aktionen auf:

if ( ! $silent ) {
    do_action( 'activate_plugin', $plugin, $network_wide );
    do_action( 'activate_' . $plugin, $network_wide );
}

Hinweis: Je nachdem, wo Sie die Funktion activate_plugin aufrufen, müssen Sie möglicherweise Folgendes hinzufügen:

 include_once( ABSPATH . 'wp-admin/includes/plugin.php' );
1
fuxia