5. function add_action( . . . ) {
return add_filter( . . . );
}
https://core.trac.wordpress.org/browser/tags/4.2.2/src/wp-includes/plugin.php#L429
События и фильтры
это практически одно и то же
6. Почему именно события?
Какие преимущества даёт использование обработчиков событий
при разработке программного обспечения?
7. Зачем так сложно?
Если я скачал WordPress, я могу делать с ним что хочу, правда?
Почему бы не внести правки в чужой код напрямую?
10. Как быть, если хук уже используется?
add_action(
'init',
'lol_action_handler',
10 // приоритет - чем меньше, тем раньше,
// если одинаковый приоритет - FIFO
);
11. Что если нужно принять параметры?
add_filter(
'the_title',
'lol_title_filter',
10,
1 // количество параметров на входе
// функции-обработчика
);
12. Как быть, если я люблю ООП?
add_filter(
'the_title',
array( $object, 'lol_filter_method' )
// метод объекта
);
13. Как быть, если я люблю ООП?
add_filter(
'the_title',
array( 'Lmao_Rofl', 'lol_filter_method' )
// статический метод класса
);
14. Как быть, если я люблю PHP 5.3?
add_filter(
'the_title',
array( 'LolSpacelol_filter_method' )
// функция внутри пространства имён
);
15. Как быть, если я люблю PHP 5.3?
add_filter(
'the_title',
function() {
// анонимная функция
}
);
17. А если нужно вернуть простое
значение?
__return_true()
__return_false()
__return_zero()
__return_null()
__return_empty_string()
__return_empty_array()