has_filter()WP 2.5.0

Check if any filter has been registered for a hook.

When using the $callback argument, this function may return a non-boolean value that evaluates to false (e.g. 0), so use the === operator for testing the return value.

Used By: has_action()
1 time — 0.000043 sec (very fast) | 50000 times — 0.91 sec (very fast) | PHP 7.0.2, WP 4.4.2

No Hooks.


true|false|Int. If $callback is omitted, returns boolean for whether the hook has anything registered. When checking a specific function, the priority of that hook is returned, or false if the function is not attached.


has_filter( $hook_name, $callback );
$hook_name(string) (required)
The name of the filter hook.
The callback to check for. This function can be called unconditionally to speculatively check a callback that may or may not exist.
Default: false


  • Global. WP_Hook[]. $wp_filter Stores all of the filters and actions.


Since 2.5.0 Introduced.

Code of has_filter() WP 6.0

function has_filter( $hook_name, $callback = false ) {
	global $wp_filter;

	if ( ! isset( $wp_filter[ $hook_name ] ) ) {
		return false;

	return $wp_filter[ $hook_name ]->has_filter( $hook_name, $callback );