WordPress : Conditional Tags

image_pdf

Un conditional tag (balise conditionnelle) dans WordPress est une fonction qui permet de vérifier une condition spécifique concernant la page en cours de chargement.

Ces balises conditionnelles permettent d’exécuter des actions ou de conditionner l’affichage de contenu en fonction du contexte de la page.

Les conditional tags sont utilisés pour déterminer si une page correspond à certains critères tels que le type de page, la catégorie, l’auteur, la présence de certains éléments, etc.

Ils sont souvent utilisés dans les fichiers de modèle du thème (templates) ou dans les fichiers de fonctionnalité (extensions) pour personnaliser l’affichage ou le comportement en fonction des conditions.

Conditional TagUtilité
is_front_page()Est-ce qu’il s’agit de la page d’accueil (blog ou page statique) ?
is_home()Est-ce qu’il s’agit de la page d’accueil (blog) ?
is_search()Est-ce qu’il s’agit de la page de résultats de recherche ?
is_user_logged_in()Est-ce que l’utilisateur est connecté ?
is_single()Est-ce qu’il s’agit d’un article ?
is_page()Est-ce qu’il s’agit d’une page ?
is_archive()Est-ce qu’il s’agit d’une page d’archives ?
is_post_type_archive()Est-ce qu’il s’agit d’une page d’archives d’un CPT (Custom Post Type) ?
is_author()Est-ce qu’il s’agit d’une archive des articles d’un auteur ?
is_tax()Est-ce qu’il s’agit d’une taxonomie (catégorie ou étiquette) ?
is_category()Est-ce qu’il s’agit d’une catégorie ?
is_tag()Est-ce qu’il s’agit d’une étiquette ?
is_404()Est-ce qu’il s’agit de la page d’erreur 404 (contenu inaccessible) ?
Conditional TagUtilité
has_post_thumbnail()Est-ce qu’une image à la une est présente ?

Ces balises conditionnelles peuvent être utilisées dans des structures conditionnelles, telles que les instructions if...else ou les boucles foreach, pour exécuter des actions spécifiques en fonction du contexte de la page.

Elles commencent habituellement par is_ (est quelque chose) ou has_ (a quelque chose).

Elles renvoient une valeur booléenne true ou false.

Par exemples :

<?php 
if ( is_home() ) {
    // Code à exécuter si la page est la page d'accueil
} elseif ( is_single() ) {
    // Code à exécuter si la page est un article individuel
} else {
    // Code à exécuter pour les autres cas
}
<?php 
// Si l'utilisateur est connecté
if ( is_user_logged_in() ):
    // Récupérer l'utilisateur actif
    $current_user = wp_get_current_user(); 

    // Afficher un message de bienvenue personnalisé avec son prénom
    echo "Bonjour " . $current_user->user_firstname;

    // Afficher un lien de déconnexion
    echo '<a href="' . wp_logout_url() . '"> Déconnexion </a>'
else:
    // Sinon, afficher un message standard
    echo "Bonjour visiteur !";

    // Afficher un lien de connexion
    echo '<a href="' . wp_login_url() . '"> Connexion </a>'
endif;

Savoir si l’on est sur la page d’accueil (statique ou blog)

Lorsque le blog est affiché en tant que page d’accueil du site, à la fois is_home() et is_front_page() renverront true.

En utilisant les conditional tags, vous pouvez personnaliser l’affichage, le comportement et les fonctionnalités de votre site WordPress en fonction du contexte de la page.

Cela vous offre une grande flexibilité pour adapter votre contenu et vos fonctionnalités aux différentes parties de votre site.

Exemple d’un fichier archive.php :

Via un seul fichier archive.php, on peut ici traiter plusieurs cas de figure (archive de catégories, page de résultats de recherches…).

À noter : la fonction single_cat_title() permet d’afficher le titre de la catégorie active.

Pour vérifier la valeur d’un conditional tag, vous pouvez utiliser la fonction PHP var_dump().

<?php var_dump(is_front_page()); die; ?>

Vous verrez apparaître true ou false.

Laisser un commentaire