Contact Form 7

Contact Form 7: Salvare dati utente sul database

Uno dei form più utilizzati in WordPress è il plugin Contact Form 7.

Questo plugin attualmente ha più di 5 milioni di installazioni attive e riceve costantemente degli aggiornamenti.

Molto spesso potrebbe capitare di dover accedere ai dati inviati dall’utente tramite il form per utilizzarli ad esempio in una chiamata API che salva in un servizio di newsletter (come ad esempio: MailChimpActiveCampaign) oppure per memorizzare il contatto ed archiviarlo sul nostro Database.

Per poter leggere questi dati quando il form è stato inviato si può utilizzare un hook da mettere nel file functions.php con il seguente codice PHP.

add_action( 'wpcf7_mail_sent', 'myfunction' );
myFunction(&$WPCF7_ContactForm) {
    $name = $WPCF7_ContactForm->posted_data['your-name'];
    $email = $WPCF7_ContactForm->posted_data['your-email'];

Nel esempio di codice qui sopra andiamo a catturare il nome e l’indirizzo email inviati dal nostro modulo di Contact Form 7 compilato dall’utente per poterli utilizzare ad esempio con le API dei servizi newsletter citati precedentemente. Di conseguenza anche tutti gli altri dati inviati (cognome, telefono, sito web, indirizzo, messaggio) si possono leggere allo stesso modo. Basta inserire il tag con il quale è stato chiamato il campo quando è stato creato il form.

Se non si utilizza il servizio di newsletter in alternativa una volta letti questi dati si possono salvare tramite una query sul nostro database in una tabella personalizzata, creata precedentemente ad esempio con phpMyAdmin. Questo qui è il codice per farlo con una tabella chiamata wp_contatti.

global $wpdb;
$tablename = $wpdb->prefix.'contatti';
$wpdb->insert($tablename, array(
    'name' => $name,
    'email' => $email
  ) 
);

In alternativa ci sono diversi plugins che permettono di archiviare i messaggi e uno dei più conosciuti ed utilizzati è Flamingo dello stesso autore di CF7.

Consiglio questo plugin che una volta attivato archivierà tutti i messaggi inviati tramite Contact Form 7 rendendoli consultabili dentro al nostro pannello di amministrazione di WordPress.

Contact Form 7 e Flamingo sono completamente open source e possono essere utilizzati gratuitamente. Esistono molte guide a riguardo anche in italiano perciò sono senz’altro una soluzione affidabile per un blog o sito di piccole dimensioni.

Fare o non fare. Non esiste provare.


Posted

in

,

by

Blog su WordPress.com.

Progetta un sito come questo con WordPress.com
Comincia ora