Débarrassez-vous définitivement des liens HTML dans les commentaires

Le problème

Les blogueurs cherchent toujours à promouvoir leurs blogs et les spammeurs sont partout. Une chose qui m’agace totalement sur mes blogs est la quantité incroyable de liens laissés dans les commentaires, qui ne sont généralement pas pertinents. Par défaut, WordPress transforme les URL des commentaires en liens. Heureusement, si vous êtes aussi fatigué que moi, cela peut être remplacé.

La solution

Ouvrez simplement votre fichier function.php et collez ce code:

function plc_comment_post( $incoming_comment ) {
  $incoming_comment['comment_content'] = htmlspecialchars($incoming_comment['comment_content']);
  $incoming_comment['comment_content'] = str_replace( "'", ''', $incoming_comment['comment_content'] );
  return( $incoming_comment );
}

function plc_comment_display( $comment_to_display ) {
  $comment_to_display = str_replace( ''', "'", $comment_to_display );
  return $comment_to_display;
}

add_filter('preprocess_comment', 'plc_comment_post', ’, 1);
add_filter('comment_text', 'plc_comment_display', ’, 1);
add_filter('comment_text_rss', 'plc_comment_display', ’, 1);
add_filter('comment_excerpt', 'plc_comment_display', ’, 1);

 

Ajouter un texte personnalisé juste avant le formulaire de commentaire

Ajoutez le code suivant au fichier functions.php de votre thème pour personnaliser le texte avant le formulaire de commentaire. Remplacez le texte par celui de votre choix:

function collectiveray_comment_text_after($arg) {

$arg['comment_notes_after'] = "Ajoutez ici le texte que vous souhaitez faire apparaître juste au dessus du formulaire de commentaire.";

return $arg; }

add_filter('comment_form_defaults', 'collectiveray_comment_text_after');

Et voilà le résultat:

Retirer le champ site web du formulaire de commentaire

Si vous n’avez pas besoin du champ « site web » du formulaire de commentaire, vous pouvez le supprimer pour éviter le spam.

En effet, certaines personnes (ou robots) peuvent laisser des commentaires non pertinents sur votre site simplement pour obtenir un lien retour vers leur site (que l’on appelle aussi backlink) et ainsi essayer d’améliorer leur positionnement dans les moteurs de recherche.

Il suffit pour cela de copier-coller le snippet suivant dans le fichier functions.php de votre thème enfant:

// Supprimer le champ site web des commentaires
add_filter('comment_form_default_fields','wpm_delete_url');

function wpm_delete_url($fields) {
    unset($fields['url']);
    return $fields;
}

Source: WPThemedetector