remove_filter

Removes a function from a specified filter hook.

Description

(boolean) remove_filter( (string) $tag, (callback) $function_to_remove, (int) $priority = 10, (int) $accepted_args = 1 ); 

This function removes a function attached to a specified filter hook. This method can be used to remove default functions attached to a specific filter hook and possibly replace them with a substitute.

To remove a hook, the $function_to_remove and $priority arguments must match when the hook was added. This goes for both filters and actions. No warning will be given on removal failure.

Returns (boolean)

Whether the function existed before it was removed.

Parameters (4)

0. $tag (string)
The filter hook to which the function to be removed is hooked.
1. $function_to_remove (callback)
The name of the function which should be removed.
2. $priority — Optional. (int) => 10
The priority of the function (default: 10).
3. $accepted_args — Optional. (int) => 1
The number of arguments the function accpets (default: 1).

Usage

  1. if ( !function_exists( 'remove_filter' ) ) { 
  2. require_once ABSPATH . PLUGINDIR . 'buddypress/bp-forums/bbpress/bb-includes/backpress/functions.plugin-api.php'; 
  3.  
  4. // The filter hook to which the function to be removed is hooked. 
  5. $tag = ''; 
  6.  
  7. // The name of the function which should be removed. 
  8. $function_to_remove = function_name; 
  9.  
  10. // optional. The priority of the function (default: 10). 
  11. $priority = 10; 
  12.  
  13. // optional. The number of arguments the function accpets (default: 1). 
  14. $accepted_args = 1; 
  15.  
  16. // NOTICE! Understand what this does before running. 
  17. $result = remove_filter($tag, $function_to_remove, $priority, $accepted_args); 
  18.  

Defined (1)

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

/bp-forums/bbpress/bb-includes/backpress/functions.plugin-api.php  
  1. function remove_filter($tag, $function_to_remove, $priority = 10, $accepted_args = 1) { 
  2. $function_to_remove = _wp_filter_build_unique_id($tag, $function_to_remove, $priority); 
  3.  
  4. $r = isset($GLOBALS['wp_filter'][$tag][$priority][$function_to_remove]); 
  5.  
  6. if ( true === $r) { 
  7. unset($GLOBALS['wp_filter'][$tag][$priority][$function_to_remove]); 
  8. if ( empty($GLOBALS['wp_filter'][$tag][$priority]) ) 
  9. unset($GLOBALS['wp_filter'][$tag][$priority]); 
  10. unset($GLOBALS['merged_filters'][$tag]); 
  11.  
  12. return $r;