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_name
string|nulloptional- Filter hook to check. Defaults to null, which checks if any filter is currently being run.
Default:
null
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
Version | Description |
---|---|
3.9.0 | Introduced. |
To check if any filter is being applied you could write something like this:
(From Codex)
To check whether the ‘posts_results’ filter is being applied you could write something similar to this: