Activates multiple plugins.
Description
When WP_Error is returned, it does not mean that one of the plugins had errors. It means that one or more of the plugin file paths were invalid.
The execution will be halted as soon as one of the plugins has an error.
Parameters
$plugins
string|string[]required- Single plugin or list of plugins to activate.
$redirect
stringoptional- Redirect to page after successful activation.
Default:
''
$network_wide
booloptional- Whether to enable the plugin for all sites in the network.
Default:
false
$silent
booloptional- Prevent calling activation hooks.
Default:
false
Source
function activate_plugins( $plugins, $redirect = '', $network_wide = false, $silent = false ) {
if ( ! is_array( $plugins ) ) {
$plugins = array( $plugins );
}
$errors = array();
foreach ( $plugins as $plugin ) {
if ( ! empty( $redirect ) ) {
$redirect = add_query_arg( 'plugin', $plugin, $redirect );
}
$result = activate_plugin( $plugin, $redirect, $network_wide, $silent );
if ( is_wp_error( $result ) ) {
$errors[ $plugin ] = $result;
}
}
if ( ! empty( $errors ) ) {
return new WP_Error( 'plugins_invalid', __( 'One of the plugins is invalid.' ), $errors );
}
return true;
}
Changelog
Version | Description |
---|---|
2.6.0 | Introduced. |
User Contributed Notes
You must log in before being able to contribute a note or feedback.