Effacer automatiquement le SPAM dans WordPress

Effacer automatiquement le SPAM dans WordPressDepuis quelques temps, je suis assailli de spams au niveau des sites WordPress que j’administre et qui sont ouverts aux commentaires, sans que j’en comprenne la raison. Afin d’effacer automatiquement ces messages indésirables qui vantent les mérites de substances médicamenteuses diverses et avariées, je viens de recourir à un script PHP que je planifie à l’aide de Cron dans lequel j’exécute un ordre SQL.

Utilisation des expressions régulières dans MySQL

MySQL dispose de la possibilité d’utiliser les expressions régulières au niveau de la clause WHERE avec l’opérateur REGEXP. Dans l’exemple ci-dessous, l’effacement des commentaires se fait à partir des mots comme buy, cheap, order, viagra, etc.

DELETE FROM wp_comments 
WHERE 
(
    comment_content 
    REGEXP 
    '([[:space:]]|>)(buy|cheap|cheapest|ciprofloxacin|estore|kamagra|louis vuitton|order|viagra)([[:space:]]|<)'
OR
    comment_author_url 
    REGEXP 
    '(ciprofloxacin|kamagra|viagra)'
)
AND
    comment_approved<>'1'
;

WordPress  / Expressions régulières Formateur Expressions régulières Formateur WordPress MySQL Wordpress 

Commentaires

Bonjour Denis,

Tout comme toi, voilà presque 2 mois que je suis pilonné par des commentaires de spams sur tous les blogs wp que je gère.

Normalement, avec le système de captcha nous ne devrions pas avoir un tel phénomène. Et je remarque que j’utilise le même que toi pour le coup. Il y a certainement une faille sur ce captcha à mon avis …

Encore merci pour l’astuce.
Bon dimanche
Franck

@Franck

Oui, le phénomène est extrêmement récent. Je vais essayer de développer un plugin WordPress dans les prochains jours. Merci pour ton commentaire. J’avais l’impression d’être victime d’une « attaque » indéfinie. Me voilà rassuré !

Il existe une extension WordPress pour ça : « Delete Spam Daily »

@Sébastien

Permet-elle l’utilisation d’expressions régulières ? Elle n’a par ailleurs fait l’objet d’aucune mise à jour depuis 2 ans.

Laisser un commentaire

(requis)

(requis)