Comment afficher les informations d’un article WordPress ? (date, auteur, commentaires)

décembre 2018

Quentin

6

Dans les thèmes WordPress, on voit souvent apparaître quelques informations sur les articles. Par exemple : l’auteur, la date de publication ou le nombre de commentaires qu’il y a dans l’article.

Pour faire apparaître ces informations dans un template WordPress, il existe des fonctions toutes prêtes !

  • la fonction the_time() (dont nous avons déjà parlé sur ce blog)
  • La fonction the_author()
  • La fonction comments_number()

Voyons comment les utiliser :

<div class="post-data">
    <p>Date : <?php the_time('d F Y'); ?></p>
    <p>Auteur : <?php the_author(); ?></p>
    <?php if(get_comments_number() == 0) : ?>
        <p><?php comments_number('0 commentaire', '1 commentaire', '% commentaires'); ?></p>
    <?php endif; ?>
</div>

Comme vous pouvez le voir ci-dessus, il n’y a rien de compliquer. Un petit éclaircissement tout de même sur l’affichage du nombre de commentaires.

Si vous ne souhaitez pas afficher le compteur de commentaire quand il n’y en a pas, vous pouvez utiliser la condition :

if(get_comments_number() == 0)

La fonction get_comments_number() renvoie le nombre de commentaires. Si ce nombre est égal à 0, nous n’affichons rien.

Pour ce qui est de l’affichage des commentaires, la fonction comments_number prend 3 paramètres :

  • Le premier correspond à ce que l’on doit afficher quand il y a 0 commentaire. Dans notre cas, rien ne s’affichera mais si cela avait été le cas, nous aurions affiché « 0 commentaire ».
  • Le deuxième correspond à ce que l’on doit afficher quand il y a un seul commentaire.
  • Le troisième correspond à ce que l’on doit afficher quand il y a plusieurs commentaires.

Il existe de nombreux autres « template tags » pour afficher du contenu dans vos templates. J’ai créé un guide qui regroupe l’ensemble des template tags utiles pour le développement de thème WordPress. Pour le recevoir, inscrivez-vous ci-dessous :

[mailorama button= »Je reçois le kit du développeur » tag= »Magnet kit développeur WordPress »]

PS: n'oubliez pas de lire mon tutoriel principal sur comment créer un thème WordPress !

6 commentaires sur "Comment afficher les informations d’un article WordPress ? (date, auteur, commentaires)"

  1. SABATIER dit :

    Bonjour,

    Je découvre votre blog. J’ai un thème qui n’affiche pas le nombre de commentaires dans l’extrait et en plus pour l’auteur c’est en anglais. Comment changer tout ca.
    Je suis nulle en code, comment fait-on pour le mettre. Merci

    1. Quentin dit :

      Bonjour,
      Vous voulez que le nombre de commentaires s’affiche sur quelle page ?

      Après, cela dépend de votre thème mais il s’agit sûrement des fichiers « archive.php » ou « category.php »

  2. Bonjour Quentin, je voudrais qu’il s’affiche comme sur mon ancien thème sur les extraits de la page d’accueil. Avec ce thème cela n’apparaît pas.

    1. Quentin dit :

      Bonjour Marie-Dominique,
      Vous pouvez essayer de faire la chose suivante :

      • Ouvrez tous les fichiers de votre thème dans un éditeur de code
      • Cherchez dans tous les fichiers le morceau de code suivant :
      • Il est probable que vous trouviez ce code dans le fichier index.php ou front-page.php
      • Normalement, vous devriez trouver le mot « By » que vous pouvez remplacer par « Par »
      • Enfin, pour afficher le nombre de commentaire à côté du nom de l’auteur, vous pouvez écrire à la fin de la balise :

      Attention, pensez à faire une sauvegarde de votre thème avant toute modification.

  3. Phil dit :

    Bonjour
    merci pour le code
    Mais comment créer une liste avec les articles qui possède au moins un commentaire
    Merci

    1. Quentin dit :

      Bonjour,
      Ca, c’est un sujet un peu différent.

      Il faut utiliser WP_Query et faire une requête par rapport aux commentaires.

      $args = array(
      'post_type' => 'post',
      'comment_count' => array(
      'value' => 1,
      'compare' => '>=',
      )
      );
      $query = new WP_Query( $args );

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *