1


0

条件タグ付きのWordpress init remove_action

テーマに対してこれを行う必要があります:

remove_action( 'wp_head', 'rel_canonical' );

しかし、私は条件付きタグでそれを行う必要があります。 以下のコードは機能しません。

if(is_page('comment'))
{
   remove_action( 'wp_head', 'rel_canonical' );
}

そして、プラグインでこれを行う必要があります。

次のように、ifステートメントを機能テストにフックしようとしました。

add_action('init', 'test');
function test()
{
   if(is_page('comment'))
   {
      remove_action( 'wp_head', 'rel_canonical' );
   }
}

条件タグが機能しない前に実行されるため、推測します。

何か案は?

2 Answer


3


initをアクションとして使用する代わりに、これを使用する必要があることがわかりました。

add_action('template_redirect', 'test');

次に、header.phpの前、ただし条件タグが設定された後に実行されます。


0


`rel_canonical`アクションを、次のような条件を含む独自の関数に置き換えてみてください:

remove_action('wp_head', 'rel_canonical');
function my_rel_canonical() {
    if (!is_page('comment')) rel_canonical();
}
add_action('wp_head', 'my_rel_canonical');