WP_Hook::has_filter
Checks if a specific callback has been registered for this 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.
Метод класса: WP_Hook{}
Хуков нет.
Возвращает
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. If $callback and $priority are both provided, a boolean is returned for whether the specific function is registered at that priority.
Использование
$WP_Hook = new WP_Hook(); $WP_Hook->has_filter( $hook_name, $callback, $priority );
- $hook_name(строка)
- The name of the filter hook.
По умолчанию: '' - $callback(callable|строка|массив|false)
- The callback to check for. This method can be called unconditionally to speculatively check a callback that may or may not exist.
По умолчанию: false - $priority(int|false)
- The specific priority at which to check for the callback.
По умолчанию: false
Список изменений
| С версии 4.7.0 | Введена. |
| С версии 6.9.0 | Added the $priority parameter. |
Код WP_Hook::has_filter() WP Hook::has filter WP 6.9
public function has_filter( $hook_name = '', $callback = false, $priority = false ) {
if ( false === $callback ) {
return $this->has_filters();
}
$function_key = _wp_filter_build_unique_id( $hook_name, $callback, false );
if ( ! $function_key ) {
return false;
}
if ( is_int( $priority ) ) {
return isset( $this->callbacks[ $priority ][ $function_key ] );
}
foreach ( $this->callbacks as $callback_priority => $callbacks ) {
if ( isset( $callbacks[ $function_key ] ) ) {
return $callback_priority;
}
}
return false;
}