Supprimer les spams de son blog Wordpress.

Publié le 05 juin 2009 par Quicktutoriel @quicktutoriel

Avec ce tutoriel, nous allons découvrir 2 aspects de l’administration d’un blog. L’utilisation de phpmyadmin et la construction et l’exécution d’une requête.
Pour commencer, il faut vous connectez avec PhpMyAdmin sur votre base wordpress. Si vous faites héberger votre site vous avez sûrement une interface type Plesk ou Cpanel. Pour mon cas se sera Cpanel. Après s’être connecté aller à la section Base de données.

Cliquer sur PhpMyAdmin.

Vous devez avoir au moins 2 bases une information_Schema (Gestion de Wordpress) et une autre qui correspond à votre blog. Sélectionner celle qui correspond à votre blog.

La liste de toutes les tables s’affiche. Cliquer Maintenant sur l’Onglet SQL.

Vous devez arriver dans une zone de saisie. Eh oui ça change d’Access. Pour faire votre requête pas d’assistant.

C’est dans cette zone que nous allons saisir nos requêtes.

Pour la suite de ce tutoriel nous allons construire 2 requêtes :

  • une qui affiche la liste des adresses IP qui polluant notre blog afin de la bloquer.

Passons maintenant aux choses sérieuses. Pour voir  les meilleurs commentateurs de votre blog, voici la requête qu’il faut lancer (Je vais m’appuyer sur sa structure pour la requête sur les spams).

Requête Meilleurs Commentateurs

SELECT comment_author_email,COUNT(comment_author_email) as nb
FROM wp_comments WHERE comment_author_email != ”
GROUP BY comment_author_email
ORDER BY nb desc

ATTENTION!!! Lors de l’exécution des requêtes vos modifications sont appliquées directement à votre base. Ici nous ne faisons que des SELECT(=Sélection), donc aucune modification sur la structure de la base, mais des commandes comme UPDATE, DELETE, … sont plus dangereuses. Sauvegarder bien votre base avant.

Faites un copier-coller puis cliquer sur Exécuter.

Après l’exécution qui dure quelques secondes, vous voyez apparaître la liste des meilleurs commentateurs par ordre décroissant, utile si vous voulez offrir des cadeaux :).

Pour le détails et les explications de cette requête je vous laisse consulter le site blogmotion.

Requête Suppression des Spams

Nous allons reprendre en partie la structure de la requête précédente en changeant quelques champs, voici la requête :

SELECT comment_author_IP, COUNT(comment_author_IP) as total
FROM wp_comments WHERE comment_approved  = ’spam’
GROUP BY  comment_author_IP
ORDER BY total desc

Etudions plus en détails sa structure :

SELECT comment_author_IP, COUNT(comment_author_IP) as total
Cette ligne permet de sélectionner l’adresse IP et de calculer le nombre d’adresses IP identique qui génére des spams. Le calcul se fait grâce à la fonction COUNT et le résultat est envoyé dans la variable total.

FROM wp_comments WHERE comment_approved  = ’spam’
Cette ligne indique la table ou nous effectuons nos recherches wp_comments et nous mettons un critère de sélection comment_approved  = ’spam’. Par défaut lorsque Wordpress considère un commentaire comme spam il écrit dans le champs SPAM sinon si il est OK (=approuvé) il mets 1.

GROUP BY  comment_author_IP
Cette ligne permet de rassembler toutes les adresses IP identique, on dit que l’on fait un regroupement

ORDER BY total desc
Cette ligne permet de classer le calcul des adresses IP par ordre décroissant (du plus grand au plus petit)

voici le résultat pour mon blog:

Nous pouvons voir que la plupart de mes spams proviennent de 3 adresses IP.

Notre but maintenant les bloquer. Bien entendu j’ai installé Askimet ce qui a pour effet d’éviter 99% des publications de spams. Reste que ceux-ci sont stockés dans ma base de données, et que les robots qui les “écrivent” consomme de la bande passante.

Nous allons éditer le fichier .htaccess et bloqué l’accès au site pour ces 3 adresses. Voici la commande a rajouter au fichier  .htaccess

Deny from 194.8.74.220
Deny from 194.8.75.163
Deny from 194.8.75.149

Pour éditer le fichier .htaccess, utiliser un logiciel FTP type FileZilla.

Maintenant il ne reste plus qu’a surveiller vos compteurs sur votre tableau de bord wordpress.

That’s All.

Difficulté :
Modification : -
Crédits : -

Note: Pour imprimer ce billet, ouvrez-le et cliquez sur le lien d'impression.