- 赤色のリンクは、まだ日本語Codexに存在しないページ・画像です。英語版と併せてご覧ください。(詳細)
関数リファレンス/is home
目次
説明
この条件分岐タグはブログ投稿インデックスページの表示中かどうかをチェックします。これは TRUE または FALSE を返す真偽値型の関数です。
使い方
<?php is_home(); ?>
パラメータ
この関数に指定できるパラメータはありません。
戻り値
- (真偽値)
- ブログ投稿インデックスページであれば true、そうでなければ false
ブログ投稿インデックスとサイトフロントページの違い
静的フロントページ機能が導入された WordPress 2.1 から、ブログ投稿インデックスとサイトフロントページは異なるクエリで扱われるようになりました。そのため is_home()
はブログ投稿インデックス、is_front_page()
はサイトフロントページに対応します。
二つのクエリ条件を混同しないよう注意してください:
- サイトフロントページでは、
is_front_page()
はいつもTRUE
を返します。サイトフロントページがブログ投稿インデックスと固定ページ(静的フロントページ)のどちらを表示するかは無関係です。 - ブログ投稿インデックスでは、
is_home()
はいつもTRUE
を返します。ブログ投稿インデックスがサイトフロントページとして表示されるか別のページとして表示されるかは無関係です。
is_home()
や is_front_page()
が TRUE
と FALSE
のどちらを返すかは特定のオプションの値に依存します:
-
get_option( 'show_on_front' )
:'posts'
または'page'
を返す -
get_option( 'page_on_front' )
: フロントページに割り当てられた固定ページのID
を返す -
get_option( 'page_for_posts' )
: ブログ投稿インデックス(投稿ページ)に割り当てられた固定ページのID
を返す
そして次のようなクエリ条件によって決定されます:
- もし
'posts' == get_option( 'show_on_front' )
なら:- サイトフロントページを表示中:
-
is_front_page()
はTRUE
を返す -
is_home()
はTRUE
を返す
-
- このとき、WordPress はサイトフロントページやブログ投稿インデックスにどの固定ページが割り当てられているかを無視します
- サイトフロントページを表示中:
- もし
'page' == get_option( 'show_on_front' )
なら:- サイトフロントページに割り当てられた固定ページを表示中:
-
is_front_page()
はTRUE
を返す -
is_home()
はFALSE
を返す
-
- ブログ投稿インデックスに割り当てられた固定ページを表示中:
-
is_front_page()
はFALSE
を返す -
is_home()
はTRUE
を返す
-
- サイトフロントページに割り当てられた固定ページを表示中:
用例
次の例はブログ投稿インデックスのサイドバーに他のページとは違う内容を表示します。
<?php if ( is_home() ) { // ブログ投稿インデックスを表示中 get_sidebar( 'blog' ); } else { // ブログ投稿インデックスではない get_sidebar(); } ?>
参考
is_home
はグローバルの $wp_query(WP_Query オブジェクト)を使います。is_home
は parse_query /en アクションが呼び出されるより前には使えません。
- is_front_page() も見てください。
廃止された使い方
WordPress 2.1 より前は静的フロントページ機能がなく、サイトフロントページとブログ投稿インデックスはいつも同じものでした。そのため、サイトフロントページにおいて is_home()
はいつも TRUE
を返していました。
変更履歴
新規導入: 1.5.0
ソースファイル
is_home() は wp-includes/query.php
にあります。
関連項目
条件分岐タグ: is_404(), is_admin(), is_admin_bar_showing(), is_archive(), is_attachment(), is_author(), is_category(), is_comments_popup(), is_date(), is_day(), is_feed(), is_front_page(), is_home(), is_local_attachment(), is_main_query, /is_multi_author, is_month(), is_new_day(), is_page(), is_page_template(), is_paged(), is_plugin_active(), is_plugin_active_for_network() /en, is_plugin_inactive() /en, is_plugin_page() /en, is_post_type_archive(), is_preview() /en, is_search(), is_single(), is_singular(), is_sticky(), is_tag(), is_tax(), is_taxonomy_hierarchical(), is_time(), is_trackback(), is_year(), in_category(), in_the_loop(), is_active_sidebar(), is_active_widget(), is_blog_installed() /en, is_rtl(), is_dynamic_sidebar(), is_user_logged_in(), has_excerpt(), has_post_thumbnail(), has_tag(), pings_open(), email_exists(), post_type_exists(), taxonomy_exists(), term_exists(), username_exists() /en, wp_attachment_is_image(), wp_script_is()
最新英語版: WordPress Codex » Function_Reference/is_home (最新版との差分)