On this page
activate_plugins( string|string[] $plugins, string $redirect = '', bool $network_wide = false, bool $silent = false ): bool|WP_Error
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
$pluginsstring|string[] Required-
Single plugin or list of plugins to activate.
$redirectstring Optional-
Redirect to page after successful activation.
Default:
'' $network_widebool Optional-
Whether to enable the plugin for all sites in the network.
Default:
false $silentbool Optional-
Prevent calling activation hooks.
Default:
false
Return
bool|WP_Error True when finished or WP_Error if there were errors during a plugin activation.
Source
File: wp-admin/includes/plugin.php. View all references
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;
}
Related
Uses
| Uses | Description |
|---|---|
| activate_plugin() wp-admin/includes/plugin.php | Attempts activation of plugin in a “sandbox” and redirects on success. |
| __() wp-includes/l10n.php | Retrieves the translation of $text. |
| add_query_arg() wp-includes/functions.php | Retrieves a modified URL query string. |
| is_wp_error() wp-includes/load.php | Checks whether the given variable is a WordPress Error. |
| WP_Error::__construct() wp-includes/class-wp-error.php | Initializes the error. |
Changelog
| Version | Description |
|---|---|
| 2.6.0 | Introduced. |
© 2003–2022 WordPress Foundation
Licensed under the GNU GPLv2+ License.
https://developer.wordpress.org/reference/functions/activate_plugins