remove_filter( string $hook_name, callable|string|array $callback, int $priority = 10 ): bool

Removes a callback function from a filter hook.


This 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 $callback 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.

Top ↑


$hook_name string Required
The filter hook to which the function to be removed is hooked.
$callback callable|string|array Required
The callback to be removed from running when the filter is applied.
This function can be called unconditionally to speculatively remove a callback that may or may not exist.
$priority int Optional
The exact priority used when adding the original filter callback.

Default: 10

Top ↑


bool Whether the function existed before it was removed.

Top ↑


File: wp-includes/plugin.php. View all references

function remove_filter( $hook_name, $callback, $priority = 10 ) {
	global $wp_filter;

	$r = false;

	if ( isset( $wp_filter[ $hook_name ] ) ) {
		$r = $wp_filter[ $hook_name ]->remove_filter( $hook_name, $callback, $priority );

		if ( ! $wp_filter[ $hook_name ]->callbacks ) {
			unset( $wp_filter[ $hook_name ] );

	return $r;

Top ↑


Version Description
1.2.0 Introduced.

Top ↑

User Contributed Notes

  1. Skip to note 1 content
    Contributed by Codex


    remove_filter( 'the_content', 'wpautop' );
    foreach ( array( 'the_content', 'the_title', 'comment_text' ) as $hook )
        remove_filter( $hook, 'capital_P_dangit' );

    If a filter has been added from within a class, for example by a plugin, removing it will require accessing the class variable.

    global $my_class;
    remove_filter( 'the_content', array($my_class, 'class_filter_function') );

    It is also worth noting that you may need to prioritise the removal of the filter to a hook that occurs after the filter is added. You cannot successfully remove the filter before it has been added.

You must log in before being able to contribute a note or feedback.