summaryrefslogtreecommitdiffstats
path: root/wp-admin/plugins.php
diff options
context:
space:
mode:
Diffstat (limited to 'wp-admin/plugins.php')
-rw-r--r--wp-admin/plugins.php20
1 files changed, 20 insertions, 0 deletions
diff --git a/wp-admin/plugins.php b/wp-admin/plugins.php
index 68e1caf..a4edf30 100644
--- a/wp-admin/plugins.php
+++ b/wp-admin/plugins.php
@@ -19,11 +19,13 @@ if ( isset($_GET['action']) ) {
wp_die(__('Plugin file does not exist.'));
if (!in_array($plugin, $current)) {
wp_redirect('plugins.php?error=true'); // we'll override this later if the plugin can be included without fatal error
+ ob_start();
@include(ABSPATH . PLUGINDIR . '/' . $plugin);
$current[] = $plugin;
sort($current);
update_option('active_plugins', $current);
do_action('activate_' . $plugin);
+ ob_end_clean();
}
wp_redirect('plugins.php?activate=true'); // overrides the ?error=true one above
} else if ('deactivate' == $_GET['action']) {
@@ -33,6 +35,17 @@ if ( isset($_GET['action']) ) {
update_option('active_plugins', $current);
do_action('deactivate_' . trim( $_GET['plugin'] ));
wp_redirect('plugins.php?deactivate=true');
+ } elseif ($_GET['action'] == 'deactivate-all') {
+ check_admin_referer('deactivate-all');
+ $current = get_option('active_plugins');
+
+ foreach ($current as $plugin) {
+ array_splice($current, array_search($plugin, $current), 1);
+ do_action('deactivate_' . $plugin);
+ }
+
+ update_option('active_plugins', array());
+ wp_redirect('plugins.php?deactivate-all=true');
}
exit;
}
@@ -72,6 +85,8 @@ foreach ($check_plugins as $check_plugin) {
<div id="message" class="updated fade"><p><?php _e('Plugin <strong>activated</strong>.') ?></p></div>
<?php elseif ( isset($_GET['deactivate']) ) : ?>
<div id="message" class="updated fade"><p><?php _e('Plugin <strong>deactivated</strong>.') ?></p></div>
+<?php elseif (isset($_GET['deactivate-all'])) : ?>
+ <div id="message" class="updated fade"><p><?php _e('All plugins <strong>deactivated</strong>.'); ?></p></div>
<?php endif; ?>
<div class="wrap">
@@ -139,6 +154,11 @@ if (empty($plugins)) {
}
?>
+<tr>
+ <td colspan="3">&nbsp;</td>
+ <td colspan="2" style="width:12em;"><a href="<?php echo wp_nonce_url('plugins.php?action=deactivate-all', 'deactivate-all'); ?>" class="delete"><?php _e('Deactivate All Plugins'); ?></a></td>
+</tr>
+
</table>
<?php
}