Filtri anti parolacce, mai più dirty words!

Ritratto di Vanni

Quando nel nostro sito web, altre persone possono inserire/creare contenuti come: articoli, commenti messaggi nel forum; spesso si rende la necessità di filtrare alcune parole che gli utenti scrivono. Se il sito è poco trafficato possiamo farlo personalmente, ma se non si ha il tempo o davvero ci sono molti visitatori che passano, possiamo affidarci a dei moduli dedicati che Drupal 7 ci offre. Attraverso questi moduli, possiamo creare liste di parole vietate o segnalare contenuti che hanno parole e link sospetti, possiamo cioè "moderare" il linguaggio dei nostri utenti in maniera automatica o quasi.

Forse il modulo più completo (ma anche più problematico da settare) è Profanity.

Voglio invece descrivere altri 3 moduli, più semplici ma che funzionano egregiamente:

Descrizione del modulo Phonetic Word Filter

Questo è il modulo di più facile configurazione ed agisce su tutti i contenuti pubblicati.

  • installare ed abilitare il modulo
  • andare in admin/config/content/formats e scegliere per quale "tipo di formato" deve essere attivato il filtro (ad esempio io ho scelto "Filtered HTML")
  • selezione del formato di testo per il filtro-parole
  • successivamente andare nella pagina di configurazione del modulo: admin/config/content/phoneticfilter e cominciare ad elencare tutte le parole che vogliamo vengano filtrate, nel file WORDS.txt all'interno della cartella del modulo è già presente un'elenco di parole vietate con varie derivazioni, peccato siano solo in inglese
  • possiamo anche filtrare parole all'interno dei titoli e possiamo scegliere con che "carattere" sostituire le parole tabù
  • creazione della lista con parole vietate
  • ora se proviamo ad inserire un contenuto con una parola presente nella "lista nera"
  • inserimento di un commento con una parola vietata
  • nel momento in cui andiamo a salvare, automaticamente il testo viene corretto
  • commento pubblicato con testo corretto

Descrizione del modulo Word Filter

Questo modulo è molto simile al precedente, ma dà la possibilità di creare diverse correzioni per differenti parole vietate. Cioè ogni parola vietata può essere corretta con una diversa parola o mix di caratteri.

  • installare e abilitare il modulo
  • andare in admin/config/content/formats e scegliere per quale "tipo di formato" deve essere attivato il filtro (ad esempio io ho scelto "Filtered HTML")
  • selezione del tipo di testo da filtrare
  • andare nella pagina di configurazione del modulo e cliccare nel tab "Add Filtered Word" in alto a destra
  • inserire la parola da vietare e con cosa la si vuole sostituire (non è obbligatorio dare un'alternativa)
  • creazione della lista di parolacce e delle loro alternative
  • una volta creato tutto l'elenco, tornare nella pagina di configurazione generale, settare le varie opzioni e salvare la configurazione
  • pagina di configurazione del modulo Word Filter
  • tutti i contenuti che avevano le parole non permesse, vengono automaticamente modificati
  • commenti con parole vietate e modificate con le loro alternative

Descrizione del modulo Comment Control 

Come suggerisce il nome, questo modulo è nato per controllare il testo dei commenti. Possiamo però, oltre a bloccare alcune parole, bloccare anche l'inserimento di link non permessi. Altra differenza rispetto ai moduli precedenti, è che le parole non vengono cancellate/corrette, ma il commento invece di venire pubblicato immediatamente, passa in modalità revisione e deve essere approvato dall'amministratore.

  • installare e abilitare il modulo
  • andare nella sua pagina di configurazione: admin/config/content/comment_control e creare l'elenco di parole e link non permessi
  • creazione della lista di parole e link vietati
  • ora se proviamo a pubblicare un commento con i termini presenti nella "bad list"
  • commento in fase di approvazione perchè presenti parole vietate

Da notare che:

  1. il commento diventa "Unpublished" e quindi serve l'approvazione
  2. anche i commenti postati dall'amministratore non vengono pubblicati
  3. basta l'Url con il nome del sito per bloccare qualsiasi pagina di esso, non serve quindi il link esatto