post_class()

Définition : post_class() produit des classes CSS liées à une publication WordPress précise, notamment son type, son statut ou certaines taxonomies. Elle permet de différencier les cartes d’articles dans un template classique.

Terminologie

Nom technique : post_class()

Appellations : Nom principal utilisé

À quoi cela sert, concrètement

Elle fournit des sélecteurs de présentation prêts à l’emploi pour les listes, les archives et les pages individuelles, sans devoir composer à la main chaque catégorie ou état CSS.

Fonctionnement détaillé

WordPress calcule les classes relatives au contenu courant ou à l’identifiant fourni, et peut ajouter les classes passées explicitement. Les filtres du Core permettent également d’ajuster le résultat.

Quand l’utiliser : contexte et choix techniques

L’utiliser sur un élément HTML qui représente un article ou une page. Ne pas supposer que le même contenu possède partout les mêmes classes si les contextes et arguments diffèrent.

Situation professionnelle réaliste

Une page d’archive affiche plusieurs cartes ; les publications d’une catégorie donnée peuvent être stylées différemment à partir de leurs classes générées.

Exemple pratique — PHP commenté

Exemple pédagogique : adapter le nom du thème, les fichiers et les conditions à un environnement de développement. Il ne constitue pas une preuve d’exécution sur ATOOLPHA.

<?php
if ( have_posts() ) {
    while ( have_posts() ) {
        the_post();
        echo '<article '; post_class( 'carte-documentation' ); echo '>';
        the_title( '<h2>', '</h2>' );
        the_excerpt();
        echo '</article>';
    }
}

Décryptage de l’exemple, étape par étape

Dans la boucle, chaque article devient le contenu courant avant l’appel à post_class(). La fonction ajoute une liste de classes CSS sur la balise article, puis le titre et l’extrait sont rendus avec les fonctions natives.

Résultat observable

Chaque carte reçoit les classes propres à sa publication et la classe fixe carte-documentation. Un CSS peut ensuite cibler un type de contenu ou une catégorie spécifique.

Exercice de vérification pratique

Afficher une archive comportant des articles de catégories différentes. Inspecter les classes générées sur chaque article et vérifier que les sélecteurs choisis ne s’appliquent pas de manière involontaire.

Pièges, limites et sécurité

Ne pas utiliser des classes CSS comme mécanisme de contrôle d’accès ou de filtrage de données sensibles : elles ne modifient que la présentation. Vérifier la sémantique article et les niveaux de titres.

Différences avec les notions voisines

post_class() décrit un contenu individuel ; body_class() décrit le contexte de la page entière.

Diagnostic avancé et cas de maintenance

Cas avancé : les cartes d’une archive ont toutes le même style malgré des taxonomies différentes. Vérifier les classes générées par WordPress pour chaque publication et la structure réelle des éléments article. Ces classes sont des repères de présentation ; elles ne doivent pas conduire à exposer des données normalement privées.

Termes et fonctions associés

  • body_class()
  • The Loop

Références documentaires officielles

Bouton retour en haut de la page