has_filter() WP 2.5.0

Перевіряє, чи була прикріплена до зазначеного фільтра якась функція. Можна вказати назву конкретної функції.

Основа для:
has_action()
1 раз – 0.000043 сек
(дуже швидко) | 50000 разів – 0.91 сек
(дуже швидко) |
PHP 7.0.2, WP 4.4.2

Хуків немає.

Повертає

true|false|int.

Коли функція, що перевіряється, вказана:

  • Число(Пріоритет) — функція перевірки прикріплена до хука.
  • false– Вказана функція не прикріплена до хука.

Коли функція, що перевіряється, не вказана:

  • true– У хука є хоч одна прикріплена функція.
  • false– У хука немає жодної прикріпленої функції.

Використання

has_filter($tag, $function_to_check);
$tag
(рядок) (обов’язковий)
Назву фільтра, який потрібно перевірити.
$function_to_check
(рядок/колбек)
Назва функції, яку потрібно перевірити на прикріплення до фільтра.


Типово: false

Приклади

0

#1 Перевіримо чи є хуки у фільтраthe_content

if( has_filter('the_content') ){
	echo "Є хоча б один хук для фільтра the_content.";
}
0

#2 Перевіримо наявність конкретної функції у фільтра the_content:

if( $priority = has_filter('the_content', 'my_function') ){
	echo "Фільтр the_content має функцію my_function з пріоритетом ". $ priority;
}

нотатки

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

список змін

З версії 2.5.0Введено.

Код has_filter() WP 6.0.2

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

Залишити відповідь

Ваша e-mail адреса не оприлюднюватиметься. Обов’язкові поля позначені *