Le spam est un problème persistant pour les utilisateurs de WordPress. Avec un grand nombre de bots et de spammeurs ciblant les sites WordPress, il n’est pas surprenant que de nombreux propriétaires de sites cherchent continuellement la meilleure façon de protéger leurs sites. Bien qu’il existe de nombreux plugins disponibles pour aider à la protection contre le spam, ils peuvent également ralentir votre site et présenter des risques potentiels pour la sécurité. Dans cet article, nous explorerons des moyens simples mais efficaces de protéger votre site WordPress contre le spam sans utiliser de plugins.
1. Désactiver les commentaires globalement ou sélectivement
Une des principales sources de spam sur les sites WordPress provient de la section des commentaires. Si vous n’avez pas besoin de commentaires sur votre site, vous pouvez simplement les désactiver globalement. Pour ce faire, suivez ces étapes :
- Connectez-vous à votre tableau de bord WordPress.
- Allez dans Réglages > Discussion.
- Sous Réglages par défaut des articles, décochez la case à côté de Autoriser les visiteurs à publier des commentaires sur les nouveaux articles.
- Cliquez sur Enregistrer les modifications en bas de la page.
Si vous souhaitez uniquement désactiver les commentaires sur certains articles ou pages, vous pouvez le faire en suivant ces étapes :
- Allez à la page Modifier de l’article ou de la page où vous souhaitez désactiver les commentaires.
- Dans la barre latérale droite, trouvez le panneau Discussion. S’il n’est pas visible, cliquez sur le menu à trois points dans le coin supérieur droit et sélectionnez Options pour activer le panneau Discussion.
- Décochez la case à côté de Autoriser les commentaires.
- Cliquez sur Mettre à jour ou Publier pour enregistrer vos modifications.
2. Mettre en œuvre une technique de honeypot
Un honeypot est une méthode utilisée pour attraper les spambots en ajoutant un champ caché à votre formulaire de commentaire que seuls les bots peuvent voir. Lorsqu’un bot remplit le champ caché, il se révèle comme un spammeur, et le commentaire peut être bloqué. Pour mettre en œuvre un honeypot sur votre site WordPress, ajoutez le code suivant au fichier functions.php
de votre thème :
function add_honeypot_field($fields) {
$fields['honeypot'] = '';
return $fields;
}
add_filter('comment_form_default_fields', 'add_honeypot_field');
function check_honeypot_field($commentdata) {
if (!empty($_POST['honeypot'])) {
wp_die('Spam détecté.');
}
return $commentdata;
}
add_filter(‘preprocess_comment’, ‘check_honeypot_field’);
3. Utiliser .htaccess pour bloquer les bots spammeurs
Une autre façon de protéger votre site WordPress contre le spam est de modifier votre fichier .htaccess. En ajoutant quelques lignes de code, vous pouvez bloquer les bots spammeurs connus d’accéder à votre site. Ajoutez le code suivant à votre fichier .htaccess :
Block spam bots
RewriteEngine On
RewriteCond %{HTTP_USER_AGENT} ^.(SpamBot|BadBot|FakeBot|AnnoyingBot).$ [NC]
RewriteRule .* - [F,L]
Remplacez SpamBot|BadBot|FakeBot|AnnoyingBot
par les agents utilisateurs des bots spécifiques que vous souhaitez bloquer.
4. Ajouter un CAPTCHA personnalisé
Les CAPTCHAs peuvent être un moyen efficace de prévenir le spam en exigeant que les utilisateurs accomplissent une tâche simple avant de soumettre un commentaire. Vous pouvez ajouter un CAPTCHA personnalisé à votre site WordPress sans plugin en suivant ces étapes :
- Créer un nouveau plugin : Tout d’abord, créez un nouveau plugin en créant un nouveau dossier dans le répertoire des plugins WordPress wp-content/plugins/. Nommez le dossier de manière descriptive, comme custom-captcha.
- Créer un nouveau fichier PHP : Créez un nouveau fichier PHP dans le dossier du plugin et nommez-le quelque chose comme custom-captcha.php. Ce fichier contiendra le code pour votre CAPTCHA personnalisé.
- Ajouter le code CAPTCHA : Ajoutez le code pour votre CAPTCHA personnalisé au fichier custom-captcha.php. Il existe de nombreux types de CAPTCHAs que vous pouvez utiliser, tels que basés sur des images, des mathématiques ou des questions. Choisissez le type de CAPTCHA qui convient à votre site Web et ajoutez le code en conséquence.
- Ajouter le CAPTCHA au formulaire de commentaire : Pour ajouter le CAPTCHA au formulaire de commentaire, vous devrez modifier le modèle de formulaire de commentaire de votre thème. Localisez le fichier comments.php dans votre thème et ajoutez le code suivant là où vous souhaitez que le CAPTCHA apparaisse :
<?php if (function_exists('custom_captcha_display')) custom_captcha_display(); ?>
- Enregistrer et activer le plugin : Enregistrez le fichier custom-captcha.php et activez le plugin dans le panneau d’administration de WordPress. Votre CAPTCHA personnalisé devrait maintenant fonctionner sur votre site WordPress. Notez qu’il s’agit d’une implémentation de base qui peut être améliorée avec des fonctionnalités supplémentaires, telles que des paramètres personnalisables ou la prise en charge de plusieurs langues.
5. Comment les changements dans WordPress 4.4 ont cassé les plugins antispam et ce que vous pouvez faire à ce sujet
La raison pour laquelle les plugins antispam ont cessé de fonctionner dans WordPress 4.4 est due à un changement dans la façon dont WordPress gère les commentaires. Dans les versions précédentes de WordPress, les commentaires étaient chargés sur chaque page, même si la page n’avait pas de commentaires. Cela permettait aux plugins antispam de vérifier et de filtrer les commentaires spam avant qu’ils ne soient affichés.
Cependant, dans WordPress 4.4, une nouvelle fonctionnalité a été introduite appelée “chargement partiel” qui charge uniquement les parties nécessaires d’une page pour améliorer les performances. Cela signifie que les commentaires ne sont plus chargés sur chaque page, rendant difficile pour les plugins antispam de filtrer les commentaires spam avant qu’ils ne soient affichés.
Pour résoudre ce problème, vous pouvez essayer l’une des solutions suivantes :
- Mettre à jour votre plugin antispam vers une version plus récente compatible avec WordPress 4.4 et au-delà. De nombreux plugins antispam ont été mis à jour pour fonctionner avec la fonctionnalité de chargement partiel introduite dans WordPress 4.4.
- Désactiver le chargement partiel en ajoutant le code suivant à votre fichier functions.php :
add_filter( 'wp_comment_query', function( $query ) {
if ( ! is_admin() && ! empty( $query['query_vars']['type'] ) && 'comment' === $query['query_vars']['type'] ) {
$query['query_vars']['type'] = '';
}
return $query;
} );
Cela désactivera le chargement partiel pour les commentaires, permettant aux plugins antispam de filtrer les commentaires spam avant qu’ils ne soient affichés.
- Utiliser le service antispam intégré Akismet fourni par WordPress. Akismet est un service antispam puissant qui est fourni avec WordPress. Vous devrez vous inscrire pour obtenir une clé API, mais une fois activé, Akismet filtrera automatiquement les commentaires spam.
Il est important de noter que bien que les plugins antispam puissent aider à filtrer les commentaires spam, ils ne sont pas efficaces à 100 %. Il est toujours bon de surveiller vos commentaires et d’approuver ou de rejeter manuellement ceux qui sont douteux. En utilisant une combinaison de plugins antispam et de modération manuelle, vous pouvez garder votre site WordPress exempt de spam.
Last modified: avril 29, 2025