Description / Informations supplémentaires

La fonction is_front_page() dépend des options présentes sur la page d'administration Réglages de votre site WordPress : Réglages -> Lecture -> La page d’accueil affiche.

Si vous cochez l'option Une page statique et que vous avez choisi une page pour l'option Page d’accueil, cette fonction retournera true quand vous vous trouverez sur celle-ci.

Voir la fonction similaire is_home().

Pour plus d'informations sur cette fonction ou d'autres similaires, voir l'article Conditional Tags sur le Manuel du développeur de thème.


Note : L'utilisation de cette fonction avant l'action 'wp' ne fonctionnera pas correctement. Par exemple, à l'action 'posts_selection' immédiatement avant 'wp', elle renvoie false alors qu'elle renvoie true à 'wp'.

Retourne

(bool) true si la requête est pour la page d'accueil du site.

Déclaration et structure de la fonction is_front_page()

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();
}
__()

Retourne la traduction d'un texte.

_doing_it_wrong()

Marque quelque chose comme étant incorrectement appelée.

Où est utilisée la fonction is_front_page() dans le CMS WordPress

Exemples

Exemple de chargement d'un en-tête différent sur la page d'accueil :
if ( is_front_page() ) :
    get_header( 'front' );
else :
    get_header();
endif;
Pour vérifier si la page actuelle est la page d'accueil (par exemple, lorsque vous êtes dans une boucle personnalisée), vous pouvez utiliser cette fonction. Elle attend un id de page comme argument :
function wpdocs_page_is_front_page( int $id ){
    // Si ce paramètre est défini sur autre chose que 'page', il n'y a de toute façon pas de page d'accueil,
    //  donc renvoie toujours false
    if( 'page' !== get_option( 'show_on_front' ) ){
        return false;
    }

    // Les types de valeurs d'option sont des chaînes, donc on les convertit en type int
    $front_id = (int) get_option( 'page_on_front' );

    return $front_id == $id;
}
Pour que le contenu s'affiche uniquement dans une boucle de la page d'accueil :
add_action( 'loop_start', 'using_front_page_conditional_tag' );

function using_front_page_conditional_tag() {
    if ( is_front_page() ) {    
        echo "<h2>S'affiche seulement sur la page d'accueil</h2>";
    }
}

Sources

Codex WordPress : is_front_page()

Autres fonctions dans le même fichier : wp-includes/query.php

Retour