deactivate_plugin

Fires before a plugin is deactivated.

Description

do_action( 'deactivate_plugin', (string) $plugin, (bool) $network_deactivating ); 

If a plugin is silently deactivated (such as during an update), this hook does not fire.

Parameters (2)

0. $plugin (string)
Plugin path to main plugin file with plugin data.
1. $network_deactivating (bool)
Whether the plugin is deactivated for all sites in the network or just the current site. Multisite only. Default is false.

Usage

To run the hook, copy the example below.
  1. // run the action 
  2. do_action( 'deactivate_plugin', $plugin, $network_deactivating ); 
The following example is for adding a hook callback.
  1. // define the deactivate_plugin callback 
  2. function action_deactivate_plugin( $plugin, $network_deactivating ) { 
  3. // make action magic happen here... 
  4. }; 
  5.  
  6. // add the action 
  7. add_action( 'deactivate_plugin', 'action_deactivate_plugin', 10, 2 ); 
To remove a hook callback, use the example below.
  1. // remove the action 
  2. remove_action( 'deactivate_plugin', 'action_deactivate_plugin', 10, 2 ); 

Defined (2)

The action is defined in the following location(s).

/wp-admin/includes/plugin.php  
  1. do_action( 'deactivate_plugin', $plugin, $network_deactivating ); 
  1. do_action( 'deactivate_' . $plugin, $network_deactivating );