is_front_page(): bool
In this article
Determines whether the query is for the front page of the site.
Description
This is for what is displayed at your site’s main URL.
Depends on the site’s “Front page displays” Reading Settings ‘show_on_front’ and ‘page_on_front’.
If you set a static page for the front page of your site, this function will return true when viewing that page.
Otherwise the same as is_home().
For more information on this and similar theme functions, check out the Conditional Tags article in the Theme Developer Handbook.
Return
bool Whether the query is for the front page of the site.Source
function is_front_page() {
global $wp_query;
if ( ! isset( $wp_query ) ) {
_doing_it_wrong( __FUNCTION__, __( 'Conditional query tags do not work before the query is run. Before then, they always return false.' ), '3.1.0' );
return false;
}
return $wp_query->is_front_page();
}
Related
| Uses | Description |
|---|---|
WP_Query::is_front_page()wp-includes/class-wp-query.php | Determines whether the query is for the front page of the site. |
__()wp-includes/l10n.php | Retrieves the translation of $text. |
_doing_it_wrong()wp-includes/functions.php | Marks something as being incorrectly called. |
| Used by | Description |
|---|---|
get_custom_logo()wp-includes/general-template.php | Returns a custom logo, linked to home unless the theme supports removing the link on the home page. |
wp_get_document_title()wp-includes/general-template.php | Returns document title for the current page. |
wp_title()wp-includes/general-template.php | Displays or retrieves page title for all areas of blog. |
_wp_menu_item_classes_by_context()wp-includes/nav-menu-template.php | Adds the class property classes for the current context, if applicable. |
wp_page_menu()wp-includes/post-template.php | Displays or retrieves a list of pages with an optional home link. |
get_body_class()wp-includes/post-template.php | Retrieves an array of the class names for the body element. |
redirect_canonical()wp-includes/canonical.php | Redirects incoming links to the proper URL based on the site url. |
Changelog
| Version | Description |
|---|---|
| 2.5.0 | Introduced. |
User Contributed Notes
-
Skip to note 5 content -
Skip to note 6 content If you are using a static page as your front page, this is useful:
<title><?php bloginfo('name'); ?> » <?php is_front_page() ? bloginfo('description') : wp_title(''); ?></title>Usage in a Custom Function
Added to your themes functions file, this code includes the
is_front_page()conditional tag after the function name so the content only displays on the front page.add_action( 'loop_start', 'using_front_page_conditional_tag' ); function using_front_page_conditional_tag() { if ( is_front_page() ) { echo'<h2>Only Displays On The Front Page</h2>'; } } -
Skip to note 7 content To check if any page is the current front page (for example, when you’re in a custom loop) you can use this function. It expects a page ID as argument:
function wpdocs_page_is_front_page( int $id ) { // If this is set to anything else than 'page' there is no front page // anyway, so always return false if ( 'page' !== get_option( 'show_on_front' ) ) { return false; } // Types for option values are string, so convert to int $front_id = (int) get_option( 'page_on_front' ); return $front_id == $id; } -
Skip to note 8 content Use of this function before Action
wpwill not work properly. For example, even at the Action immediately prior towp,posts_selection, it returnsFALSEeven when it returnsTRUEatwp.
You must log in before being able to contribute a note or feedback.

Example for loading a different header on the front page: