doing_filter( string|null $hook_name = null ): bool

Returns whether or not a filter hook is currently being processed.

Description

The function current_filter() only returns the most recent filter being executed.
did_filter() returns the number of times a filter has been applied during the current request.

This function allows detection for any filter currently being executed (regardless of whether it’s the most recent filter to fire, in the case of hooks called from hook callbacks) to be verified.

See also

Parameters

$hook_namestring|nulloptional
Filter hook to check. Defaults to null, which checks if any filter is currently being run.

Default:null

Return

bool Whether the filter is currently in the stack.

Source

function doing_filter( $hook_name = null ) {
	global $wp_current_filter;

	if ( null === $hook_name ) {
		return ! empty( $wp_current_filter );
	}

	return in_array( $hook_name, $wp_current_filter, true );
}

Changelog

VersionDescription
3.9.0Introduced.

User Contributed Notes

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