Akismet ne ramasse pas les miettes ?

Bon, je crois qu’à l’image de nombreux blogueurs utilisant le CMS qu’est WordPress, j’utilise Akismet pour identifier et défoncer le SPAM qui arrive dans mes commentaires…
…c’est bien pratique, je l’avoue (surtout que la très grosse majorité du temps, il y a très très peu de faux positifs) !

Bon, c’est probablement pas la meilleure des solutions quand on a un gros lectorat et donc une pluie de commentaires mais moi, ça me va…mon lectorat est assez réduit.

Envie de lire la suite ? Eh bien cliquez sur « lire la suite » ! 😉

Alors Akismet me détecte bien le SPAM en commentaire, ce qui me permet de les défoncer direct et rapidement, jusque là…TOUT VA BIEN !
Le soucis, c’est qu’il ne vire pas les informations liées aux commentaires supprimés et que la table wp_commentmeta grossit, grossit et grossit encore au fil des informations rajoutées dedans…

Que pouvons nous faire ?
Eh bien, tout simplement…supprimer les entrées de la table wp_commentmeta n’ayant plus de relation dans la table des commentaires wp_comments !

Pour celui qui n’a pas envie de se prendre là tête, une p’tite ligne de SQL (là c’est pas pour la définition…j’adore ce site, c’est tout) via votre système de gestion de base de données et hop, c’est plié (phpMyAdmin peut vous permettre de le faire si le CLI vous donne des boutons) !

Bon, maintenant que j’ai fait péter mon record d’insertion de liens dans un article, allons à la solution… héhé’

Pour commencer, je décline toute responsabilité quant à l’utilisation non prudente ou foireuse d’une quelconque ligne de commande par copier/ coller…et puis je vous conseille de faire une sauvegarde de votre base de données, ou du moins de la table que vous allez maltraiter, avant que de faire quoi que ce soit…
…soyons clairs, j’suis pas un trouillard ou un peureux…j’ai simplement côtoyé beaucoup de stagiaires et maintenant je suis « prudent » !
:mrgreen:

Commençons par vérifier le « taux de bordel » lié aux commentaires spamiques (ce mot n’existe pas, n’allez même pas le vérifier) ; hop, un p’tit coup de :

SELECT * FROM wp_commentmeta WHERE comment_id NOT IN (SELECT comment_id FROM wp_comments);

Oui je sais, un « select * » c’est crado…mais pour l’exemple ça me suffira bien…donc OSEF !

Bon alors vous avez du retour à la précédente commande ?
Ok, eh bien maintenant on va passer le p’tit coup de rotofil ; tout ça avec un p’tit coup de :

DELETE FROM wp_commentmeta WHERE comment_id NOT IN (SELECT comment_id FROM wp_comments);

Et voilà… Une optimisation des tables plus tard (via le moyen qui va bien ou via WP-Optimise…une extension qu’elle est bien), tout est nickel…même derrière les oreilles.

Bon je suis certain que y a forcement un truc plus simple pour gérer ça mais cette solution me va bien…
…et pour le fun, parce que César il aime bien qu’on lui rende son bordel à lui qu’il a : merci à Baptiste Simon aka TiChou !

Voilà voilà… 🙂

J’en profite pour dire qu’à raison de plus d’une centaine de commentaires SPAM par jour, je ne prends même plus soin de vérifier s’il y a un « faux positif » dedans, je nettoie tout direct d’un coup d’un seul…je n’ai vraiment pas de temps à consacrer à une telle vérification ; si vous postez un commentaire et que vous ne le voyez pas apparaître, c’est qu’il a été considéré comme un machin à caractère publicitaire non désiré…
Si c’est vital, alors contactez moi via le formulaire de contact et on gérera ça pépère, tranquille !
😉

4 commentaires

    • Bonsoir…
      …y a pas de quoi ; dans la même catégorie, depuis quelques temps l’extension wordpress WP-Optimize finalise bien l’option « ménage » (suppression des metadonnées liées à l’action d’askimet).

      Après ça, il n’y a même plus besoin de taper sur la base à coups de requête SQL…
      😉

Participer à la vie du Pseudo-Quasi-Blog en laissant un commentaire... ;-)