Le WordPress d'aujourd'hui, décodé pour les développeurs

Tips

Le nombre d’apprenants bloqués sur une même leçon d’un cours e-learning

Repérer une leçon qui pose problème avant que le taux d'abandon du cours entier ne s'effondre en silence.

Par Clément Hadrot • 19 septembre 2025 • 4 min de lecture • Aucun commentaire
Le nombre d'apprenants bloqués sur une même leçon d'un cours e-learning

Sur un cours à quinze leçons, un taux d’achèvement global de 60 % ne dit rien de précis : est-ce que les apprenants abandonnent progressivement, un peu à chaque leçon, ou est-ce qu’une seule leçon concentre l’essentiel du décrochage ? Ces deux situations demandent des réponses radicalement différentes, et pourtant la plupart des tableaux de bord de LMS ne présentent qu’un chiffre agrégé par cours.

L’indicateur manquant est simple à construire : le nombre d’apprenants actuellement bloqués sur chaque leçon, c’est-à-dire ceux qui ont commencé la leçon sans la terminer depuis un délai anormal, disons plus de sept jours.

Ce que révèle une table de progression bien structurée

La plupart des extensions LMS pour WordPress stockent la progression sous forme de métadonnées utilisateur ou dans une table dédiée, avec au minimum un identifiant d’apprenant, un identifiant de leçon et un statut (non commencé, en cours, terminé). C’est sur cette table que repose l’indicateur, sans avoir besoin d’ajouter de nouvelle structure de données.

La requête de comptage par leçon

L'essentiel à retenir : Un indicateur par leçon, pas seulement par cours ; Un seuil d'alerte configurable ; Une requête simple sur la table de progression

La requête consiste à grouper les enregistrements « en cours » par leçon, en filtrant sur une date de dernière activité antérieure au seuil retenu :

global $wpdb;
$table_progression = $wpdb->prefix . 'lms_progression';

$resultats = $wpdb->get_results( $wpdb->prepare(
    "SELECT lecon_id, COUNT(*) AS nb_bloques
     FROM {$table_progression}
     WHERE statut = 'en_cours'
     AND derniere_activite < %s
     GROUP BY lecon_id
     ORDER BY nb_bloques DESC",
    gmdate( 'Y-m-d H:i:s', strtotime( '-7 days' ) )
) );

Le tri par ordre décroissant place naturellement la leçon la plus problématique en tête de tableau, ce qui évite à l’équipe pédagogique de parcourir la liste complète pour repérer le point chaud.

Afficher un signal visuel dans l’administration

Plutôt qu’un simple tableau de chiffres, un code couleur par seuil aide à la lecture rapide :

  • Moins de cinq apprenants bloqués : vert, situation normale
  • Entre cinq et vingt : orange, à surveiller
  • Plus de vingt : rouge, intervention pédagogique recommandée

Distinguer blocage individuel et blocage structurel

Un blocage individuel (un apprenant en particulier qui traîne) ne signale rien d’alarmant : la vie professionnelle interrompt régulièrement une formation en autonomie. C’est la concentration anormale sur une même leçon, à travers de nombreux apprenants différents, qui indique un problème de contenu : une consigne mal formulée, une vidéo trop longue, un quiz avec une question ambiguë, ou un prérequis technique non précisé (logiciel à installer, compte à créer au préalable).

Croiser avec le temps moyen passé sur la leçon

Un deuxième indicateur complémentaire affine le diagnostic : le temps moyen passé par les apprenants qui ont terminé la leçon, comparé au temps de ceux qui restent bloqués. Un écart important suggère que ceux qui bloquent butent sur un point précis plutôt que de simplement avancer plus lentement.

SituationInterprétation probable
Beaucoup bloqués, temps passé faibleAbandon rapide, contenu perçu comme rébarbatif dès le début
Beaucoup bloqués, temps passé élevéDifficulté réelle, quiz ou exercice trop exigeant
Peu bloqués, dispersés dans le tempsPas de signal structurel, situation normale

Notifier l’équipe pédagogique sans spammer

Un cron quotidien qui recalcule ces chiffres et envoie une notification uniquement en cas de franchissement de seuil évite d’inonder l’équipe pédagogique d’alertes répétitives sur une même leçon déjà identifiée comme problématique. Un simple enregistrement en base du dernier seuil notifié suffit à filtrer les envois redondants.

Un indicateur qui n’est consulté qu’une fois par trimestre ne sert à rien : mieux vaut un chiffre simple regardé chaque semaine qu’un tableau de bord sophistiqué ignoré.

En résumé

Compter les apprenants bloqués leçon par leçon, avec un seuil de délai raisonnable, transforme un taux d’achèvement global peu actionnable en un diagnostic précis sur le contenu à revoir en priorité. La requête reste simple à écrire ; la valeur réside surtout dans la discipline de la consulter régulièrement plutôt que de la laisser dormir dans un coin de l’administration.

Partager :

À propos de l'auteur

Clément Hadrot

Développeur WordPress, passionné par Elementor, le FSE et l’automatisation par IA.

Voir tous ses articles

Dans la même veine

À lire aussi