Afficher les articles les plus commentés sans plugin sous WordPress

Mis à jour le :

Vous souhaitez mettre en avant vos articles de votre blog WordPress les plus commentés ?

Les commentaires constituent LA valeur ajoutée de votre site alors mettez en avant ces contenus qui ont suscité le débat.

Pour mettre en place une liste d’articles les plus commentés – mais cela fonctionne avec n’importe quel type de contenu, nous aurons recours à la fonction WP_Query pour créer une requête personnalisée.

Vous devez placer ces lignes de code dans le fichier PHP de votre thème qui affichera ces données. Ainsi, si vous souhaitez lister les 5 articles les plus commentés dans votre colonne latérale, placez le tout dans sidebar.php.

Le nom du fichier peut varier en fonction du thème. C’est une piste et un exemple d’emplacement que je vous donne. Pour comprendre la hiérarchie des templates sous WordPress, consultez le schéma officiel.

<h3><?php _e('Most commented posts', 'id4d'); ?></h3>

<ul>

<?php $popular = new WP_Query('orderby=comment_count&posts_per_page=4&ignore_sticky_posts=1'); ?>
<?php $count = 1; ?>

<?php while ($popular->have_posts()) : $popular->the_post(); ?>

<li id="comment<?php echo $count ?>">
<a href="<?php the_permalink() ?>" rel="bookmark" title="<?php the_title_attribute(); ?>"><?php the_title(); ?></a>
<div><?php comments_number('0','1','%'); ?></div>
</li>

<?php endwhile; ?>
</ul>

Je suis aller plus loin dans mon code en ajoutant un compteur qui ajoute un ID CSS pour chaque puce, l’idée étant de vous donner la possibilité de personnaliser le tout. Par exemple, en créant des barres de progressions pour créer l’illusion d’un classement des contenus les plus populaires vers les moins populaires.

Par défaut, les paramètres de ma requête sont :

  • orderby=comment_count : le coeur du sujet ! Classer la liste en fonction du nombre de commentaires obtenus ;
  • posts_per_page=4 : 4 articles à afficher ;
  • ignore_sticky_posts=1 : pour ignorer les articles mis en avant ;

Plus besoin de faire des requêtes SQL compliquées, comme c’était le cas auparavant. Avec WordPress, on ne réinvente pas !

Avatar de Aurélien Denis

Protégez votre site WordPress

Vos données sont précieuses,
ne prenez pas le risque de tout perdre.
Confiez-moi votre maintenance !

Ces articles devraient t’intéresser…

12 réponses
  1. Avatar de John
    John

    Sympa !
    Merci pour le tips Aurélien 🙂

  2. Avatar de etix
    etix

    Merci beaucoup pour ces explications intéressantes

  3. Avatar de GsenPhotography
    GsenPhotography

    Je cherche également le plugin qui me fera avoir des commentaires sur les articles 😉

    Plus sérieusement, merci pour ce tuyau que je vais tester prochainement (si les commentaires arrivent…mais je persiste)

    Je trouve de l’aide de qualité sur WP Channel, tu as gagné un abonné fidèle, merci pour ton travail

  4. Avatar de Arthur
    Arthur

    Merci pour cet article, je cherchais un bout de code dans ce style pour mettre en exergue mes articles les plus commentés !

  5. Avatar de Henri
    Henri

    Bonjour,
    Je cherche à faire l’inverse su WordPress Oxygen, faire disparaître les « Recent Articles » sur la page d’accueil. J’ai sabré à la hache (dans page-template-front.php à partir de ) mais me trouve avec un site lent. Existe-t-il un plugin ou une méthode douce ?

  6. Avatar de Arnaud
    Arnaud

    Merci Aurélien pour l’astuce 🙂
    Pas besoins à chaque cas d’utiliser un plugin et une preuve de plus ici, puis pas trop compliqué à mettre en place.

  7. Avatar de Djib's
    Djib’s

    Salut,

    Ce qui serait intéressant serait de pouvoir mettre les articles les plus commentés dans le mois, histoire que ce ne soit pas toujours les mêmes qui apparaissent.

    Tu aurais une solution pour ça ?

    Merci pour ton travail.

    1. Avatar de Aurélien Denis
      Aurélien Denis

      Il doit y avoir moyen d’intégrer un paramètre de date… à voir !

  8. Avatar de Bernard G.
    Bernard G.

    Bonne idée mais ce code est tout de même réservé aux aguerris

  9. Avatar de CFD
    CFD

    toujours utile de se passer d’un plugin quand on peut… Merci pour l’astuce

    1. Avatar de Aurélien Denis
      Aurélien Denis

      Pour ce type de situation, oui c’est pratique mais le recours aux plugins est souvent justifié pour gérer des composantes à part entière (multilinguisme, SEO, formulaires, etc.).

  10. Avatar de Fabrice COURT
    Fabrice COURT

    Merci Aurélien !
    Reste à trouver le plugin pour que les visiteurs commentent à coup sûr (mais il semblerait que tu l’ais déjà trouvé 🙂