Je mets un if(is_home())
dans le functions.php de mon thème et cela ne semble pas fonctionner. La fonction contenant ce bit est appelée sur init, donc is_home
devrait déjà fonctionner.
is_home()
ne fonctionnera pas tant que wp_query
n'aura pas été exécuté. Le premier crochet que vous pouvez utiliser sur lequel is_home fonctionnera est 'parse_query'
, mais 'template_redirect'
serait préférable.
Pour donner suite à la réponse de John: Ajoutez un appel à ladite fonction sur l’un des crochets mentionnés par John et hakre.
Ajoutez, par exemple, les éléments suivants à votre fichier functions.php:
<?php
function my_function_name(){
if(is_home()) do_something();
}
add_action('template_redirect', 'my_function_name');
?>
EDIT: J'ai mal compris votre question au début - il semble que vous ayez déjà une fonction encapsulant le code, mais que vous tiriez sur le mauvais crochet. Soit divisez cette section en une fonction distincte et faites-la déclencher dans template_redirect, etc., ou modifiez l'emplacement de votre point de départ.