Я добавил бит if(is_home())
в файл functions.php моей темы, и он, похоже, не работает. Функция, содержащая этот бит, вызывается при инициализации, поэтому is_home
уже должен работать.
is_home()
не будет работать, пока не будет запущен wp_query
. Самым ранним хуком, который вы можете использовать там, где будет работать is_home, является 'parse_query'
, но 'template_redirect'
будет лучше.
Чтобы продолжить ответ Джона: добавьте вызов к указанной функции на одном из хуков, упомянутых Джоном и Хакре.
Добавьте, например, следующее в ваши functions.php:
<?php
function my_function_name(){
if(is_home()) do_something();
}
add_action('template_redirect', 'my_function_name');
?>
Правка: я сначала неправильно понял ваш вопрос - похоже, у вас уже есть функция, инкапсулирующая код, просто вы стреляете не по адресу. Либо разбейте этот раздел на отдельную функцию и запустите его в template_redirect и т.д., Либо измените место, где вы подключаетесь.