WordPress ContactForm con Trencaspammers

Questa volta si è trattato di un… detto – fatto. Ne avevo parlato giusto alcune ore fa ed ecco pronta la soluzione… il modulo contatti con captcha di sicurezza.

Il plugin che utilizzo nella pagina dei contatti è Wp ContactForm che, nella sua semplicità, non prevedeva alcuna funzione anti-spam. Per questo, modificando qualche riga di codice, ho inserito Trencaspammers, un ottimo plugin per WordPress messo in funzione un paio di giorni fa.

Le modifiche da apportare al codice sono semplicissime.

Aprite wp-contactform.php ed intorno alla riga 78, dopo:

global $wpcf_strings;
$ok = true;

Inserite:

$ts_code=trim($_POST['ts_code']);
$ts_random=$_POST['ts_random'];
if ( !ts_is_human($ts_random, $ts_code))
die( __('Errore: per favore inserisci il codice di sicurezza correttamente.'));

Alla riga 159, subito dopo l’apertura della parentesi graffa dell’else, inserite:

$ts_random=rand();

Ed alla riga 166, subito dopo la riga che inizia per:

andate a capo ed inserite (sostituendo il giusto percorso verso trencaspammers.php):

<div class="contactleft"><label for="ts_code">
<input type="hidden" name="ts_random" value="' . $ts_random . '"/>
<img src="http://PERCORSO/trencaspammers.php?ts_random=' . $ts_random .'" alt="spam" />
</label></div>
<div class="contactright">
<input type="text" name="ts_code" id="ts_code" size="30" /> (obbligatorio)</div>

A questo punto salvate il file e… dovrebbe funzionare tutto. 😉

Buon hack e… fanc*lo agli spammers! 🙂

P|xeL

Pubblicato da

Ingegnere. Si divide tra lavoro, bicicletta, monociclo e volontariato. Vive in una casa con un ciliegio insieme ad una moglie, una bimba e otto pesciolini che non lo aiutano a tenere in ordine.

1 commento » Scrivi un commento

  1. Pingback: …time is what you make of it… » Archivio del blog » Trencaspammers - errori nel codice.

Lascia un commento

I campi richiesti sono marcati con *.


This site uses Akismet to reduce spam. Learn how your comment data is processed.