Introduzione
L'implementazione all'interno del proprio sito, di un servizio di newsletter, potrebbe essere cosa gradita agli utenti delle nostre pagine. Le newsletter inviate a cadenze periodiche predefinite, potrebbero essere utilizzate anche per pubblicizzare eventi e/o eventuali novità all'interno del nostro sito.
Tra gli applicativi di gestione per newsletter, in questi anni si è ritagliato uno spazio importante lo script phplist, un progetto completamente open source, sviluppato su piattaforma PHP altamente performante ed affidabile. L'obiettivo di quest'articolo è integrare phplist in Drupal.
Funzioni del modulo
Esiste un modulo per Drupal che consente una sincronia tra gli utenti Drupal e quelli di phplist, in particolare ogni qualvolta viene creato un utente Drupal, quest'ultimo verrà aggiunto automaticamente al database di phplist, al fine di poterlo includere all'interno del servizio di newsletter implementato. Il modulo fornisce anche un comodo blocco per consentire a tutti i visitatori non ancora registrati al sito di potersi registrare comodamente. Altra interessante funzionalità opzionale offerta è quella relativa alla possibilità di creare attributi phplist per gli utenti non standard, cioè per tutti gli utenti che non siano classificati come "anonymous user" oppure "authenticated user".
Reperire le risorse
Occorrerà, preventivamente reperire all'interno dell'area download del sito ufficiale di phplist il pacchetto d'installazione. È possibile optare per due diverse distribuzioni, quella in formato ZIP e quella in formato TGZ, al momento della scrittura di quest'articolo l'ultima versione disponibile stabile è la 2.10.10. Prelevato phplist, procederemo recuperando il modulo d'integrazione di tale servizio per Drupal, scaricandolo dal sito ufficiale.
Installiamo il tutto
Il tutorial ha come scopo principale quello d'integrare phplist all'interno di Drupal, per questo tralasceremo l'installazione di phplist per concentrarci sulla sua integrazione, naturalmente se si ha necessità d'aiuto sull'installazione potremo far riferimento alla guida ufficiale (in inglese).
Concentriamoci sulla sua integrazione, il primo passo da compiere è scompattare in una qualsiasi parte del nostro hard disk il pacchetto del modulo precedentemente scaricato. Per semplicità supponiamo di scompattarlo sul desktop del nostro computer. All'interno del file compresso, troveremo una cartella denominata phplist, nella quale sono immagazzinati cinque file, due di testo e tre fondamentali all'installazione ed alla configurazione del modulo. Carichiamo tramite un qualsiasi client FTP (come ad esempio FileZilla) la cartella phplist all'interno della directory "modules" del nostro CMS, la nuova composizione della cartella modules sarà qualcosa di simile a ciò che viene illustrato in figura.
Se l'upload della cartella è andato a buon fine, collegandoci all'interfaccia d'amministrazione del nostro Drupal, tramite la selezione della voce Moduli presente all'interno del Menù Amministra, potremo procedere all'attivazione del modulo.
L'attivazione del modulo d'integrazione di phplist 6.x-1.0 è quella standard prevista da Drupal, quindi ne tralasceremo la descrizione. Il processo d'installazione ed attivazione è ultimato, non ci resta che provvedere alla configurazione del componente alfine di poterne utilizzare le potenzialità messe a disposizione.
Configurazione
Per configurare il modulo d'integrazione, dopo esserci loggati come amministratori a Drupal, occorrerà spostarci nella sezione "Amministra > Configurazione" del sito ed infine selezionare la voce phplist.
Con l'ausilio della pagine di configurazione, si dovranno fornire alcuni parametri per il collegamento tra Drupal e phplist. Nella prima parte del form di configurazione, andremo ad inserire tutte le informazioni relative al collegamento con il database di phplist precedentemente installato, nello specifico forniremo: il nome dell'host che ospita il database di phplist (nel mio caso localhost), successivamente occorrerà inserire il nome del database, (nel mio caso avendo utilizzato in fase di setup quello di default, inserirò nel campo "Database name" la stringa phplist). Naturalmente il modulo dovrà interfacciarsi con il database, quindi occorrerà inserire le credenziali d'accesso cioè "Database user" e "Database password", concludiamo l'immissione dei parametri relativi al database inserendo nell'ordine il prefisso utilizzato dalle tabelle di phplist, il prefisso per le tabelle degli user e l'indirizzo presso il quale reperire gli script di phplist da noi installati.
La seconda parte del form di configurazione esporta alcune importanti funzioni, come ad esempio la possibilità di trasferire i "first name" ed i "second name" dei profili di Drupal verso phplist, il mio consiglio è quello di abilitare tale funzione, ma non solo potremo personalizzare il messaggio da visualizzare all'interno della form di registrazione alla nostra newsletter ed il testo da visualizzare nella pagina "My Newsletters" che verrà creata. Immesse tutte le preferenze che più ci soddisfano occorrerà salvare la configurazione utilizzando l'apposito tasto presente in fondo alla pagina.
Aggiungere il blocco phplist
Come si è accennato in precendeza, il modulo permette di aggiungere al nostro sito Drupal un blocco per consentire agli utenti di registrasi al servizio di newsletter. L'aggiunta di tale blocco è semplicissima, una volta loggati come amministratori all'interno del sito ci sposteremo nell'area "Amministra > Costruzione del sito > Blocchi". A questo punto non ci resta che identificare all'interno della sezione Blocchi la voce "phplist subscribe", e per mezzo della combo-box associata decidere in quale settore posizionare del nostro template collare il blocco in questione, nell'esempio riportato abbiamo posizionato il blocco all'interno della "Barra laterale sinistra" del sito, sarà altresì possibile, utilizzando la corrispondente voce configura, impostare le proprietà avanzate del blocco, come ad esempio il titolo (nel nostro caso Newsletter), il "Block text:" (contenente una descrizione del blocco ad esempio Iscriviti alla newletter), il formato nel quale ricevere la newsletter ecc.. Configurato a proprio piacimento il blocco, non resterà che confermare il tutto cliccando sul tasto "Salva blocco" posizionato in fondo alla pagina. Il sistema ci confermerà l'avvenuta modifica per mezzo della stringa "La configurazione del blocco è stata salvata."
Sincronizzazione forzata
È possibile decidere se effettuare una sincronizzazione "forzata" tra gli utenti di phplist e Drupal, così da allineare gli users dei due applicativi, per compiere tale operazione all'interno del menù "Amministra > Configurazione del sito > phplist" sezioneremo la voce "Synchronise now" posizionata a fondo pagina, avviata la procedura occorrerà attendere qualche secondo per il completamento dell'allineamento dei due database.
Proviamo le funzionalità
Per verificare che il nostro modulo funzioni correttamente, basterà collegarci come amministratori allo script phplist e selezionare la voce "list of all users", potremmo infatti notare che gli utenti inseriti all'interno del CMS Drupal, vengono automaticamente riportarti anche all'interno dell'applicativo phplist.
Conclusioni
L'integrazione di una newsletter all'interno di un sito è diventata ormai una pratica comune, ecco perché risulta fondamentale integrare in modo sicuro e funzionale tale servizio all'interno di un CMS come Drupal.