質問

私はaを置きます if(is_home()) 私のテーマのfunctions.phpに噛みついて、それが機能しないようです。このビットを含む関数はinitで呼ばれますので is_home すでに動作するはずです。

役に立ちましたか?

解決

is_home() まで動作しません wp_query 実行されています。 IS_HOMEが機能する場所で使用できる最古のフック 'parse_query', 、 しかし 'template_redirect' 方が良いだろう。

他のヒント

ジョンの回答をフォローアップするには、ジョンとハクレが言及したフックの1つに、上記の関数への呼び出しを追加します。

追加、functions.phpに次のことを追加します。

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

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

編集:最初はあなたの質問を誤解しました - すでにコードをカプセル化する関数があるように見えますが、間違ったフックで発射しているだけです。そのセクションを別の関数に分割し、template_redirectなどで発射するか、最初に引っ掛けている場所を変更します。

ライセンス: CC-BY-SA帰属
所属していません wordpress.stackexchange
scroll top