Задача. Необходимо узнать какие функции подключены к тому или иному хуку в WordPress.
Решение. Чтобы узнать какие функции подключены к хуку необходимо создать и выполнить функцию из Код №1, которая из глобальной переменно $wp_filter
выдаст названия функций подключенных к конкретному хуку. Данный скрипт можно подключить, например файле footer.php
.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
|
// Создание функции для просмотра подключенных к хуку функций
function print_function_for_hook( $hook = ” ) {
global $wp_filter;
if( empty( $hook ) || !isset( $wp_filter[$hook] ) )
return;
print ‘<pre>’;
print_r( $wp_filter[$hook] );
print ‘</pre>’;
}
// Вывод
print_function_for_hook (‘woocommerce_before_shop_loop_item’);
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
|
WP_Hook Object
(
[callbacks] => Array
(
[10] => Array
(
[woocommerce_template_loop_product_link_open] => Array
(
[function] => woocommerce_template_loop_product_link_open
[accepted_args] => 1
)
)
)
[iterations:WP_Hook:private] => Array
(
)
[current_priority:WP_Hook:private] => Array
(
)
[nesting_level:WP_Hook:private] => 0
[doing_action:WP_Hook:private] =>
)
|
Хук (крючек) — такой массив ссылок функций. Можно представить в виде папки, которая собирает функции, а потом мы где нужно запускаем ее и получается запуск всех функций пакетом. add_action (‘хук’, ‘функция’) — функция которая добавляет в хук другую функцию. do_action (‘хук’) — функция, которая приводит хук в исполнение.