WordPress Plugins automatisch aktivieren

WordPress Plugins über eine eigene Funktion aktivieren kann nützlich sein, ein kleiner Ansatz sorgt für eine Grundlösung.

WordPress speichert die aktiven Plugins in der Datenbank, Tabelle options, Feld activate_plugins; damit ist es ein leichtes diesen Wert zu verändern und so kann man sauber diverse Plugins von WordPress aktivieren lassen; sei es als Plugin-Lösung nach dem Einrichten einer neuen Installation oder weil eigene Plugins einge andere Plugins brauchen.

Im folgenden eine kleine Beispiel-Lösung, die die Ansätze liefert. Dabei ist wichtig, dass nicht die Plugin-Namen genutzt werden, sondern der String der Datei; der auch in diversen Hooks benötigt wird. Im Anschluss eine einfache Lösung um an diesen String im Backend zu kommen, nicht in die Funktion integriert und rein eine schnelle Hilfe; aber mehr soll der Beitrag auch nicht sein - Copy & Paste ja, aber bedacht.


// only example; control about register_activation_hook() 
add_action( 'admin_init', 'fb_activate_plugins' );
function fb_activate_plugins() {
	
	if ( ! current_user_can('activate_plugins') )
		wp_die(__('You do not have sufficient permissions to activate plugins for this site.'));
	$plugins = FALSE;
	$plugins = get_option('active_plugins'); // get active plugins
	
	if ( $plugins ) {
		// plugins to active
		$pugins_to_active = array(
			'hello.php', // Hello Dolly
			'adminimize/adminimize.php', // Adminimize
			'akismet/akismet.php' // Akismet
		);
		
		foreach ( $pugins_to_active as $plugin ) {
			if ( ! in_array( $plugin, $plugins ) ) {
				array_push( $plugins, $plugin );
				update_option( 'active_plugins', $plugins );
			}
		}
		
	} // end if $plugins

}

Die nachstehende Funktion und dessen Hook sorgen für eine direkte Ausgabe auf der Plugin-Seite im Backend des Strings zur Plugin-Datei, also bitte nur zum schnellen Finden nutzen.


add_filter( 'plugin_row_meta', 'fb_get_plugin_string' , 10, 4 );
function fb_get_plugin_string( $plugin_meta, $plugin_file, $plugin_data, $status ) {
	// echo plugin file string
	echo '<code>' . $plugin_file . '</code><br>';
	return $plugin_meta;
}

Kommentare sind geschlossen.