Afficher le temps de lecture d’un article WordPress sans utiliser de plugin

Afficher temps de lecture article WordPress
WordPress Lecture 3 minutes • 10 mars 2021

La solution que je vais vous présenter est celle que j'utilise sur cet article même. Vous pouvez voir en dessous du bandeau visuel une estimation du temps de lecture de l'article (3 minutes). Voyons comment faire la même chose pour votre site !

Le temps de lecture sur le web

Par nature, nous sommes moins patients devant un texte sur écran qu'en lisant un livre ou journal papier. C'est ainsi.
De plus, les consultations sont de plus en plus nomades et aller à l'essentiel est un atout non contestable dans ce contexte.
Afin d'anticiper un décrochage des internautes dans la consultation de site éditorial, on a vu fleurir sur les sites de médias la mention du "temps de lecture". Un réel atout pour informer l'internaute sur son implication et sa concentration nécessaire lorsqu'il consulte un contenu, et cela même avant qu'il ait commencé à lire.

La solution de l'extension WordPress

Les 3/4 des solutions proposées par les blogueurs WordPress reposent sur l'installation d'une extension telle que Reading Time WP. Personnellement, je préfère le faire moi-même et maîtriser la solution surtout que ce n'est pas difficile du tout à reproduire. Voyons ça dès maintenant !

Le code de calcul du temps de lecture d'un article WordPress

Le code suivant est à insérer dans le fichier functions.php

Il est globalement admis que nous lisons entre 200 et 250 mots par minute en moyenne. Le code récupère tous le contenu d'un article, retire toutes les balises de code et texte superflu pour en déduire un nombre total de mots.
Ce total est ensuite divisé par 200 puis arrondit au nombre supérieur.
Ainsi on est capable d'estimer un temps de lecture par cette simple règle mathématique.

/* CALCUL TEMPS ESTIME LECTURE ARTICLES */
 function temps_lecture() {
   global $post;
   $content = get_post_field( 'post_content', $post->ID );
   $word_count = str_word_count( strip_tags( $content ) );
   $readingtime = ceil($word_count / 200);
   if ($readingtime == 1) {
     $timer = " minute";
   } else {
     $timer = " minutes";
   }
   $totalreadingtime = $readingtime . $timer;
   return $totalreadingtime;
 }

Ensuite, utilisez cette fonction pour l'afficher sur votre site dans le fichier php de votre choix (par exemple single.php pour l'afficher dans les Articles WordPress) :

<?php echo temps_lecture(); ?>

Ce code affiche "X minutes", à vous ensuite de placer le contexte dans votre HTML si vous souhaitez par exemple écrire "Temps de lecture : X minutes".

J'espère que cet article vous a été utile. N'hésitez pas à consulter les nombreux tips et conseils WordPress que je partage sur site 😉


Si cet article vous a aidé, lâchez votre plus bel applaudissement en remerciement ! 🤗