私はかなり基本的な問題を抱えていますが、WPにはネイティブソリューションがないことに驚いています(何かを見落としているのでない限り)。
static page読書設定でフロントページを設定したWPサイトを持っています。プラグインコードで、WPがフロントページを表示しているかどうかを判断し$classes、そうである場合は配列にクラスを追加しようとしています。私はそれを達成するために次のコードを使用しています  
add_filter('body_class', function($classes){
    if(is_front_page() || is_home()){
        $classes[] = 'home-page';
    }
    return $classes;
});  両方is_front_page()を使用していis_home()ますが、フロントページの設定が静的ページからブログレイアウトに将来変更される場合に備えて。   
私が遭遇している問題は、このコードがページ上home-pageにbodyもクラスを追加することwp-signup.phpです。  
コードを調べると、そのis_front_page()呼び出しが明らかになり、WP_Query::is_front_page()本質的にはの結果が返されますWP_Query::is_page(get_option('page_on_front'))。問題の根本は、なるようにwp-signup.phpページ(ID)としての資格によって返さget_option('page_on_front')(返すID設定でフロントページなどの静的ページセットの>が読み取ります)。  
WP_Query::is_page()WP_Query::get_queried_object()内部的にを使用して、現在のページがメソッド引数に存在するページであるかどうかを判断します。でwp-signup.php場合、現在の問い合わせ対象オブジェクトを設定するコードは、次の通りであります  
/*...other code... */
elseif ( $this->is_singular && ! empty( $this->post ) ) {
    $this->queried_object = $this->post;
    $this->queried_object_id = (int) $this->post->ID;
}
/*...other code... */  これは、何らかの理由でワードプレスがフロントページにクエリを実行し、wp-signup.php次の質問を表示して提起することを示しています。  
- is_front_page()間違った結果が返されるのはなぜですか?
- 私の知る限りは、wp-signup.phpWordPressのコードだけで確認することで救済されていない理由を、次に設定Wordpressの管理者を使用して、ホームページとして設定することはできませんPHP_SELFかREQUEST_URI?
- $this->postこの時点でWP_Queryに現在のホームページがあるのはなぜですか?
プラグイン(およびmu-plugins)ディレクトリを削除して、プラグインの問題を除外しました。それはまだwp-signup.php他のどのページにもないフロントページとして認められます。  
この問題に関するヘルプは大歓迎です。
アップデート
 
WP verison 4.2.4を使用していますが、これはマルチサイト設定です。
ありがとう。
if状態を:( ! isset( $GLOBALS['pagenow'] ) || $GLOBALS['pagenow'] !== 'wp-signup.php' ) && ( is_front_page() || is_home() )