В плагине WordPress добавлен фильтр template_include
add_filter( 'template_include', 'myFunction', PHP_INT_MAX );
Это обычно работает на ряде сайтов, но на одном сайте, конкретно , получается что ничего из myFunction на самом деле не работает.
Например, даже если вы просто echo
, как это:
function myFunction( $template ) {
if(current_user_can( 'manage_options' ))
{
echo "test";
}
return $template;
}
Если, однако, добавлен фильтр template_redirect
, то он на самом деле работает:
add_filter( 'template_redirect', 'myFunction', PHP_INT_MAX );
Почему это произошло?
Возможно ли, что тема каким-то образом игнорирует хук template_include
?
С технической точки зрения, кажется, что template_include
- хорошая практика, но в данном конкретном случае она на самом деле ничего не делает.
Есть ли способ узнать, был ли удален этот фильтр (или что-то подобное), и вместо этого использовать * 1025? * в определенных ситуациях?
Кажется глупым использовать template_redirect
все время, если это необходимо только иногда.