get_post_status()
Définition : get_post_status() retourne l’état courant d’une publication WordPress : publié, brouillon, privé ou autre statut enregistré. Elle aide à distinguer la présence d’un contenu de son état éditorial.
Comprendre et utiliser
À quoi sert ce terme ?
Elle sert à conditionner certains traitements : un export public peut ignorer les brouillons, tandis qu’un outil interne peut signaler les contenus en attente de validation.
Fonctionnement technique
La fonction lit le statut associé à un ID ou à un objet de publication et peut retourner false si celui-ci n’existe pas. Des statuts personnalisés peuvent être enregistrés par des extensions.
Dans quels contextes l’utiliser ?
Dans un tableau de bord de suivi, utiliser le statut pour informer. Pour exposer une fiche au public, ne pas se contenter d’un simple test sur une chaîne : respecter les règles WordPress de lecture.
Cas concret : ATOOLPHA
ATOOLPHA veut afficher un repère éditorial pour les articles publiés tout en excluant les brouillons d’une liste publique de démonstration.
Exemple de code commenté
Extrait PHP destiné à un plugin ou à un template WordPress, dans le contexte indiqué ; pas au contenu HTML de l’article.
<?php
$post = get_post( 123 );
if ( $post instanceof WP_Post && 'publish' === get_post_status( $post ) ) {
echo '<span>Publié</span>';
}
Décryptage de l’exemple
L’instance de publication est vérifiée puis le statut est comparé strictement. Cet exemple n’accorde aucune permission : il se limite à afficher un indicateur.
Résultat attendu
Une étiquette « Publié » apparaît uniquement lorsque l’objet concerné possède le statut publish.
Exercice pratique et vérification
Comparer une publication publiée et un brouillon. Observer les valeurs et tenter une consultation déconnectée sans modifier les droits du site.
Précautions et limites
La valeur publish ne suffit pas à établir toutes les conditions d’accès, notamment pour certains contenus protégés ou rendus privés selon des règles spécifiques.
À ne pas confondre
get_post_status() indique l’état d’un contenu ; get_post_type() indique sa nature ; une capacité comme read_post traite les permissions.
Diagnostic avancé
Si le statut semble incohérent après modification, contrôler les révisions, le contenu réellement visé et les transitions de statut plutôt que de rafraîchir le cache sans diagnostic.
Choix d’architecture et déploiement
Le statut d’une publication intervient dans le workflow éditorial, mais la visibilité peut dépendre d’autres règles : protection par mot de passe, capacités, comportement de la requête et extension d’accès. Concevoir un export public exige de traiter ces aspects ensemble.
Contrôle avant intégration
Avant d’utiliser le statut pour filtrer une liste publique, confirmer la politique de visibilité et l’absence de données privées dans la sortie.
Notions associées
- WP_Post
- get_post_type()
- current_user_can()
