Ajoutez ce code dans votre fichier prepend.php du répertoire de votre thème courant :

/**
 * @function dcMeilleursCommentateurs v0.2
 *
 * Cette fonction effectue une requete sur la table des commentaires afin 
 * d'en extraire la liste des auteurs les plus prolixes, et de les afficher
 * ainsi qu'eventuellement un lien vers leur site.
 *
 * @param  integer  $nb            Nombre de noms de commentateurs a afficher (default: 5)
 * @param  array    $exclure       Tableau des pseudos a exclure de la liste (default: empty array)
 * @param  boolean  $display_site  Affiche ou pas un lien vers le site du commentateur (default: false)
 *
 */
 
function dcMeilleursCommentateurs($nb=5, $exclure=array(), $display_site=false) {
	GLOBAL $blog;
	$con = $blog->con;
	$nb = is_int($nb) && $nb > 0 && $nb <= 100 ? $nb : 5;
	$reqPlus = '';
	if (!is_array($exclure) || count($exclure) == 0) {
		$do_exclure = false;
	} else {
		$do_exclure = true;
		for ($i=0; $i<count($exclure); $i++) {
			$reqPlus .= "AND comment_auteur != '".str_replace("'", "\'", $exclure[$i])."'";
		}
	}
	$sql = 'SELECT DISTINCT(comment_auteur), COUNT(comment_auteur) AS nbposts, MAX(comment_site) AS comment_site FROM dc_comment WHERE 1 '.$reqPlus.' GROUP BY comment_auteur ORDER BY nbposts DESC, comment_site ASC LIMIT 0, ' . $nb;
	if ($rc = $con->select($sql)) {
		if ($rc->int_row_count > 0) {
			$pos = 0;
			echo '<ol>';
			while ($rc->fetch()) {
				if ($do_exclure == false || !in_array($rc->f('comment_auteur'), $exclure)) {
					if ($display_site == true && $rc->f('comment_site')) {
						$auteur = '<a href="http://'.$rc->f('comment_site').'" rel="nofollow">'.$rc->f('comment_auteur').'</a>';
					} else {
						$auteur = $rc->f('comment_auteur');
					}
					echo '<li><strong>'.$auteur.'</strong> ('.$rc->f('nbposts').')</li>';
				}
			}
			echo '</ol>';
		} else {
			echo '<p>Aucun commentaire.</p>';
		}
	}
}

Cela s'utilise comme suit, par exemple dans votre fichier template.php du thème courant :

<?php dcMeilleursCommentateurs(5, array('NiKo', 'Jean-Pierre Rafarin', 'MecQueJ\'AimePas', 'Spammeur-Man'), true) ?>

Le premier paramètre permet de spécifier le nombre de pseudos à afficher (5 par défaut), le deuxième est un tableau contenant les pseudos à exclure de la liste et le troisième spécifie si vous désirez afficher un lien vers le site du commentateur.

Enjoy :)

Edit

Suite à la remarque de kNo', voici une altération de la table dc_comment ajoutant un index sur le champs comment_auteur, déstinée à alléger la charge généré par l'execution de la requête utilisée par la fonction :

ALTER TABLE dc_comment ADD INDEX idxauteur ( comment_auteur );

N'étant pas expert absolu en SQL, je demande validation du principe aux sommités parcourant ce billet :green:

Edit 2

Mise à jour de la fonction en version 0.2, avec un nouveau paramètre qui permet de spécifier si l'on veut afficher un lien vers le site du commentateur. C'est de la bouillie de bidouille SQL, j'ai honte[1], mais ça tient en une seule requête, et je n'en ai pas de trace dans mes slow_queries.

Pour éviter que cette fonction ne se transforme en véritable appel au SPAM de commentaires, j'ai ajouté l'attribut rel="nofollow" aux liens générés, et ce afin de dissuader les éventuels spammeurs.

Notes

[1] D'ailleurs si quelqu'un a quelque chose de plus optimisé, qu'il ne se gêne pas pour le signaler :)