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

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


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.

Top ↑

See also

Top ↑


$hook_name string|null Optional
Filter hook to check. Defaults to null, which checks if any filter is currently being run.

Default: null

Top ↑


bool Whether the filter is currently in the stack.

Top ↑


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

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 );

Top ↑


Version Description
3.9.0 Introduced.

Top ↑

User Contributed Notes

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