Un paio di settimane fa leggevo da Giovy la recensione entusiasta di questo plugin tutto italiano per WordPress: Hiddy.

Domenica scorsa, dopo che Akismet ha bellamente ignorato una decina di commenti farmaceutici in un colpo solo, mi sono finalmente deciso e l’ho installato. Risultato: funziona! In questo momento ci sono solo 15 commenti nella coda dello spam, quando dovrebbero essercene diverse centinaia 😀

L’idea non è del tutto originale, ma è stata implementata in maniera semplice e allo stesso tempo intelligente: una volta attivato, Hiddy aggiungerà un campo al form dei commenti.
Il campo in questione avrà un nome scelto all’interno di un elenco di possibili scelte – tutte “invitanti” dal punto di vista dello spammer -, sarà inserito in un DIV con classe CSS casuale e reso invisibile tramite un’apposita regola. Ecco un esempio:

Perché il plugin funziona? Semplice: l’utente standard non vedrà il campo “nascosto” e non lo compilerà, uno spam-bot che scandaglia il codice html alla ricerca dei campi da compilare inserirà del testo in questo campo e verrà bloccato.
In questo modo si semplifica la gestione dei falsi positivi e si alleggerisce il carico sul server: non è necessario inserire i commenti spam nel db, con conseguente risparmio di CPU e spazio.

Fino a quando Hiddy potrà funzionare? Nel momento in cui questi sistemi anti-spam basati su CSS si diffonderanno, gli spam-bot dovranno necessari adeguarsi: naturalmente il sistema funziona solo se il bot non controlla gli attributi css del campo (valori ampiamente negativi di top e left, display:none, ecc. ecc.).

Nel frattempo è un plugin assolutamente da installare e consigliare agli amici 😉

Per il momento ho un unico dubbio: come si comportano i lettori vocali per non vedenti in presenza di un campo nascosto tramite css? Lo ignorano? In caso contrario ci sarebbe un bel problema di accessibilità 😕

Tag Technorati: , ,

15 commenti/trackback a “Hiddy: dai un taglio allo spam”

  1. k76 scrive:

    ciao, sono lo sviluppatore del plugin, hai ragione ed hai fatto un’ottima osservazione per quanto riguarda l’accessibilità
    Sitamo pensando ad alcune soluzioni al riguardo.
    Concordo con te sul fatto che per ora hiddy funziona, per ora, necessariamente dovremo inventarci altro, o qualcosa di un po’ più complicato, ovviamente però andando avanti ci ritroveremo con un plugin molto meno semplice.
    Secondo me quello che fa di hiddy un qualcosa di veramente utile è la sua semplicità…. rapido e leggero insomma quasi invisibile

  2. Merlinox scrive:

    Non so se l’idea di HTML è partita da qua:
    http://tinyurl.com/3cmq9k
    e qua:
    http://tinyurl.com/2v752j

    Sicuramente quella di quel genio di k76 si 😉

  3. flod scrive:

    Concordo su tutta la linea 😉

    In ogni caso complimenti per il plugin: le soluzioni adottate sono molto astute (vedi classe css random, nome pseudo-casuale).

  4. flod scrive:

    Uhm, a quanto pare molti screenreader ignorano i campi non visualizzati (fonte, purtroppo non aggiornatissima), quindi non dovrebbero esserci problemi con Hiddy.

    Piuttosto: perché nel css avete usato visibility:none e non display:none? Vedi link.

  5. k76 scrive:

    Grazie mille 🙂

  6. k76 scrive:

    confermo quanto detto da merlinox, l’idea di base è proprio la sua, infatti c’è scritto anche su http://hiddy.etechs.it

    @pseudotecnico Per quel che riguarda il CSS adottato è tutto scritto nei due link postati da merlinox

    cmq qualsiasi suggerimento è ovviamente ben visto.

  7. Merlinox scrive:

    La differenza sostanziale è che display:none non passa il campo all’interno del form nella pagina successiva.

    Il problema dell’usabilità è una cosa grande, ci sono passato. E’ vero però che la grande maggioranza dei blog sono troppo multimediali, il problema dello screenreader (purtroppo) è fuori target.

    Cmq non so se l’abbia inserito k76, ma era prevista una etichetta con scritto di “Non inserire valori in quel campo”.

  8. flod scrive:

    @Merlinox

    Ok 🙂

    Per curiosità ho controllato il codice, e se non sbaglio il commento viene inserito e poi cancellato: giusto?

    Quindi si risparmia solo spazio sul DB ma non CPU (non che sia fondamentale) 😉

  9. Merlinox scrive:

    @pseudotecnico: segnalo la tua domanda a k76. Io hiddy ce l’ho nel mio blog che è in coldfusion. Diciamo che è la versione originale (manella edition) 🙂

  10. k76 scrive:

    @pseudotecnico, si certo, prima viene scritto sul db e poi cancellato, la versione 0.1 non scriveva nemmeno sul DB, però questo provocava dei problemi in fase di editing come segnalato da Shor di http://www.geekissimo.com (uno dei primi tester), infatti quando editavi un commento veniva individuato come spam perchè nell’amministrazione di WP mancava il campo nascosto, veniva poi cancellato.
    La cosa non è risultata simpatica, tutt’altro.

    Per il risparmio di CPU io direi invece che è essenziale!

    Una delle features che volevo sviluppare riguardava un contatore di spam, ma questo avrebbe richiesto l’utilizzo del DB, abbandonata immediatamente 😉

  11. jooliaan scrive:

    @pseudo: Hiddy si può usare in combinazione con Askimet, oppure Askimet va disabilitato?

  12. k76 scrive:

    @jooliaan lo puoi usare assieme a quello che vuoi
    Akismet
    reCaptcha (se vuoi complicarti la vita)
    etc etc

    non c’è limite, è un addOn a quello che già c’è

  13. jooliaan scrive:

    Grazie k76, riattivo anche Askimet allora 😉

    P.S.
    Ho messo il bannerino di Hiddy nel blog 🙂

  14. k76 scrive:

    uhhh yeah grazie mille 😉

Trackback e pingback

  1. Antispam ed antiflood per Hiddy plugin per wordpress - Piwik.it Tips e Tricks
    [...] in particolar modo un piacevolissimo post di pseudotecnico che ha fatto un’analisi abbastanza approfondita del plugin e dei possibili [...]

Non è possibile inserire nuovi commenti. I commenti vengono disattivati automaticamente dopo 60 giorni.