it-swarm.asia

İs_home () neden doğru çalışmıyor?

Temamın fonksiyonlarına bir if(is_home()) bit koydum.php ve işe yaramadı. Bu biti içeren fonksiyona init çağrılır, bu yüzden is_home zaten çalışmalıdır.

3
naugtur

is_home(), wp_query çalıştırılana kadar çalışmaz. İs_home'un çalışacağı yerde kullanabileceğiniz en eski kanca 'parse_query', ancak 'template_redirect' daha iyi olurdu.

9
John P Bloch

John'un cevabını takip etmek için: John ve hakre tarafından belirtilen kancalardan birine söylenen fonksiyona bir çağrı ekleyin.

Örneğin, options.php dosyasına aşağıdakileri ekleyin:

<?php
function my_function_name(){
  if(is_home()) do_something();
}

add_action('template_redirect', 'my_function_name');
?>

EDIT: İlk başta sorunuzu yanlış anladım - görünüşe göre kodu zaten içine alan bir fonksiyonunuz var, sadece yanlış kancayı ateşliyorsunuz. Bu bölümü ayrı bir işleve ayırın ve template_redirect, vb. İle ateşlemesini sağlayın veya ilk etapta takıldığınız yeri değiştirin.

2
ZaMoose