WordPressの has_filter()は返り値が int|boolean なので普通に if(has_filter()) で処理しちゃうと `` が返ってきた時に意図しない結果になってしまいます。
解決策
なのでそういう時は if(is_int(has_filter())) を使いましょう。
参考
[wordpress – recognize `` as a true in PHP if statement – Stack Overflow][1]
WordPressの has_filter()は返り値が int|boolean なので普通に if(has_filter()) で処理しちゃうと `` が返ってきた時に意図しない結果になってしまいます。
なのでそういう時は if(is_int(has_filter())) を使いましょう。
[wordpress – recognize `` as a true in PHP if statement – Stack Overflow][1]