Quand utiliser is_home () vs is_front_page ()?

60

J'ai constaté que is_front_page semble renvoyer la valeur true lorsque je consulte la page d'accueil et qu'un seul post-collant y est attribué.

Il renvoie également true lorsque j'ai affecté une page en tant que page de couverture statique via Paramètres > Lecture .

Pourquoi voudrais-je jamais utiliser is_home() ?

    
posée N2Mystic 06.10.2011 - 07:42
la source

3 réponses

59

is_front_page() renvoie true si l'utilisateur se trouve sur la page ou la page de messages définie sur la page d'accueil dans Paramètres- > Lecture- > Votre page d'accueil s'affiche

.

Donc, si vous définissez about us comme page de couverture, cette condition ne sera vraie que si vous affichez la page qui sommes-nous .

is_home() renvoie true lorsque, sur la page de liste des articles, il s’agit généralement de la page affichant les 10 derniers articles.

Si les paramètres sous Les affichages de votre page d'accueil sont laissés par défaut, la page d'accueil retournera la valeur true pour is_front_page() et is_home()

Exemple d'utilisation de is_home() :

  • Vous avez défini la page de vos messages sur une page intitulée Actualités .
  • Un utilisateur navigue ici et dans l'en-tête vous souhaitez afficher une navigation supplémentaire
  • Vous pouvez utiliser is_home() pour le faire.
réponse donnée Brady 06.10.2011 - 08:09
la source
3

J'ai découvert que is_home() et is_front_page() ne livraient pas ce qui était attendu pour les multisites. Ma solution de contournement utilisant des goodies PHP intégrés:

if($_SERVER['REQUEST_URI'] == '/') {
    // you must be on the home page
}

Comme indiqué dans les commentaires, cette approche ne fonctionnera pas pour les instances de WP installées dans des sous-répertoires de la racine Web. Utilisez-le à votre discrétion.

    
réponse donnée Dylan Pierce 03.05.2016 - 17:30
la source
1

Vous voudriez utiliser is_home() pour vérifier si l'utilisateur visualise votre liste d'articles du blog (généralement configuré pour afficher 10 articles par page). Si vous avez un fichier home.php dans votre thème, il sera affiché lorsque la condition is_home() sera vraie.

Les éléments suivants peuvent éventuellement dissiper une certaine confusion: lorsque is_front_page() et is_home() conditions, les deux sont vrais, le modèle front-page.php sera utilisé à la place de home.php .

    
réponse donnée Momekh 28.04.2014 - 22:53
la source

Lire d'autres questions sur les étiquettes