Pochi giorni fa, mi ha chiamato un carissimo amico per chiedermi alcuni consigli sull' installazione di un software CRM Open Source chiamato Vtiger, software utile alla gestione della sua piccola attività (ma anche di grandi aziende , perchè no). Devo essere sincero, non sapevo nemmeno che esistessero certe tpologie di software ed in particolar modo, non sapevo che tali software, potessero essere implementati come applicazioni WEB sviluppate in php , mysql etc. Che cosè Vtiger ? Beh, non chiedentemi più di tato visto che l' ho installato in locale solo da una settimana. Si tratta comunque di un CRM (Customer Relationship Management) , un software che permette la gestione delle relazioni coi clienti(contatti, report, marketing, vendite , supporto post-vendita, inventario e magazino, etc.). Questa cosa mi ha subito fatto venire in mente Joomla e la possibilità di integrare quest' ultimo con Vtiger.
Ho cominciato a cercare in rete riscontrando la presenza di alcuni moduli/plugin che svolgono appunto tale integrazione. Tra quelli che ho trovato free, però, nulla di eccezzionale, almeno a mio parere e comunque, si tratta di moduli e plugin che svolgono una ben determinata funzione di interfacciamento. Cercando ancora, mi imbatto in questo post del sito ufficiale di Vtiger. E' possibile creare form in Joomla, utilizzando il componente Chronoforms, che interagiscono direttamente con il CRM Vtiger e con il suo database. La cosa comincia a farsi interessante.
{linkr:related;keywords:joomla;limit:5;title:Articoli Correlati}
Premessa.
Quello che vogliamo ottenere è la creazione di una semplice form da pubblicare in joomla, che permetta all' utente che raggiunge il nostro sito, di inserire una richiesta spontanea di informazioni o di contatto con la nostra azienda. Tale form in joomla, dovrà quindi comunicare con il modulo "Leads" di Vtiger.
Per provare il tutto, nel mio pc, ho installato in locale (su XAMPP) i seguenti componenti:
I.- VTiger CRM 5.2.1 (www.vtiger.com)
II.-Joomla! CMS 1.5.14 (www.joomla.it)
III.- ChronoForms 3.2.0 (www.chronoengine.com)
Per l' installazione di Vtiger, occorre creare una nuova cartella su htdocs (p.e. vtigercrm) e decomprimere i file d' installazione di Vtiger all' interno di questa cartella. Poi, si prosegue con l' installazione , che e' molto simile a quella di Joomla. Verrà quindi creato un database mysql contenete oltre 400 tabelle. Durante l' installazione di Vtiger, installate anche i dati di esempio. Terminata l' installazione di Vtiger, la pagina d' accesso al CRM si presenterà così (clicca sull 'immagine per ingrandire).
Entrando, visualizzerete la home page del CRM (vedi figura quì sotto). Potremmo considerarla un pò come il backend del nostro sito Joomla.
Per l' installazione di ChronoForms si procede invece come per qualsiasi altro componente di joomla. Su ChronoForms, esistono già articoli in questa comunity, in particolare quello di vales , articolo veramente illuminante su questo eccezionale componente. Quì trovate la traduzione in italiano di Vtiger 5.2.x. Per installare la lingua italiana, entrare in Vtiger, poi dal menù, si va su "Settings"->"Module Manager" e sulla videata che vi compare (vedi figura sotto), si clicca su "Custom Modules".
Poi, si preme il bottone "Import New" , si seleziona il file della lingua scaricato precedentemente e si prosegue con "import". Al termine del caricamento del file lingua, si effettua il logout da Vtiger e ci si riconnette selezionando la lingua italiana.Iniziamo ora con la configurazione del modulo WebForms di Vtiger.
Configurare modulo WebForms di Vtiger per comunicare con Joomla!
Abilitare il modulo Webforms. Entrare in Vtiger come admin e andare su "Impostazioni"->"Gestione Moduli". Verificare, nella lista dei moduli Vtiger , la presenza del modulo "Webforms" e che tale modulo sia abilitato (segno di spunta verde).
Creare un nuovo utente in Vtiger. Dal menù principale, cliccare su "impostazioni" poi, nella lista che appare sotto, cliccare su "Utenti" e poi su "nuovo utente" e popolare le caselle di testo "Nome Utente", "password", "Conferma Password", "Cognome" e "Ruolo". Come nome utente mettiamo per esempio "test" e come ruolo selezioniamo "CEO". Salviamo il tutto con bottone "Salva". Questo non sarà altro che l' utente di Vtiger che riceverà le richieste di info provenienti dal sito joomla.
Modifica del file di configurazione del modulo WebForms di Vtiger. Effettuare il logout da Vtiger e rilogarsi con la username e password del nuovo utente creato al punto precedente. Andare su "le mie preferenze", menù in alto a destra e prendere nota della stringa alfanumerica presente nel campo "password di accesso". Ora, aprire il file "Webforms.config.php" presente in "............/vtigercrm/modules/Webforms" e modificarne il contenuto come segue:
$enableAppKeyValidation = false;
$defaultUserName = 'test'; <- nome dell' utente Vtiger creato al punto precedente
$defaultUserAccessKey = '******************'; <- password alfanumerica prelevata da "le mie preferenze"
$defaultOwner = 'test';
$successURL = '';
$failureURL = '';
/**
* JSON or HTML. if incase success and failure URL is NOT specified.
*/
$defaultSuccessAction = 'HTML';
$defaultSuccessMessage = 'LBL_SUCCESS';
Salviamo il file.
Creazione di un campo personalizzato relativo ai Leads. I Leads, in Vtiger, vengono utilizzati come primo contatto con dei potenziali clienti, da non confondere quindi con i Contatti veri e propri (altro modulo del CRM). Ogni lead, quindi, conterrà i dati necessari per gestire la comunicazione con il potenziale cliente. Creiamo ora un campo personalizzato che conterrà la descrizione della richiesta di informazioni proveniente dal form che genereremo poi in Joomla. Effettuiamo il logout da Vtiger e riloghiamoci con username e password di amministratore (admin) poi, "Impostazioni"->"Gestione Moduli" poi, dalla lista dei moduli che compare sotto, cliccare sul simbolo del martello relativamente al modulo "Lead". A questo punto, cliccare su "Editor Layout" si aprirà la seguente videata:
Cliccare sull' icona evidenziata nella figura sopra per creare un novo campo Lead , nella finestra che si aprirà, sceglere "Area di testo" e come etichetta "Richiesta info da web" e salvare. Come vedete , il campo è stato aggiunto al lead. Nel database, i campi pesonalizzati dei leads risiedono nella tabella "vtiger_leadscf". Occorre pertanto visualizzare tale tabella con phpmyadmin e ricavare il nome vero asseganto da Vtiger al campo personalizzato appena creato. Nel mio caso il campo si chiama "cf_610". Tutti i campi personalizzati aggiunti al leads risiederanno in questa tabella e avranno nome "cf_xxx". Se notate, il primo campo della tabella contiene il "leadid", che identifica il lead a cui si riferisce il campo aggiunto. La tabella principale dei leads si chiama "vtiger_leaddetails". Il "cf_xxx" da noi creato e NULL per tutti i lead presenti , non essendo ancora mai stato utilizzato nei vari lead presenti.
Configurazione del form in Joomla tramite ChronoForms
Creazione del form Joomla tramite wizard di ChronoForms. Per creare il form entrare in Joomla backed su “Componenti”->”Chrono Forms”->”Form Wizard”, aggiungere i “text box” item che si ritiene necessari. I leads in Vtiger vengono salvati su varie tabelle di cui , la principale , è la tabella "vtiger_leaddetails" (vedere con phpmyadmin) che contiene per esempio i campi "firstname" , "lastname" , "email", "phone", "company", "industry" , "website" , "leadsource". Creiamo quindi il nostro form che conterrà i campi "firstname" , "lastname" , "email" e "cf_610" (inserite il nome "cf_xxx" del vostro caso) creato precedentemente e contenente la richiesta del cliente avendo l' accortezza, per ogniuno di essi, di modificare la proprietà "field name" esattamente uguale al nome di campo della tabella "vtiger_leaddetails" , per quanto riguarda i campi "firstname" , "lastname" e "email" , e della tabella "vtiger_leadscf" per quanto riguarda il campo personalizzato "cf_610" / "cf_xxx" creato precedentemente (vedi punto 3 figura quì sotto). Per terminare il form , inseriamo il pulsante di invio (puno 2 in figura) e salviamo il form. Ribadisco l' importanza dei nomi dei campi del form che devono coincidere con i nomi dei campi delle tabelle del db Vtiger.
Ora, effettuiamo una piccolissima modifica al codice generato dal wizard di ChronoForms. Clicchiamo sul Form appena creato (p.e. Form1)
Entriamo nel menù di configurazione del form e selezioniamo il tab "Form Code" e modifichiamo il codice solo ed esclusivamente per la parte che riguarda il pulsante di invio (vedi figura quì sotto).
Spostarsi ora sul tab "Plugins" ed abilitare Curl. Salviamo ora il form con il bottone in alto a destra.
Predisposizione del form appena creato all' invio dei dati a Vtiger.
Ora, selezionare Form1 e cliccare su CURL.
Entriamo nella configurazione del plugin Curl di ChronoForms (vedi figura quì sotto). Infatti, e proprio utilizzando tale funzionalità di php e il relativo plugin di ChronoForms che otterremo la comunicazione del form appena creato con il modulo Leads di Vtiger (utilizzando le peculiarità del modulo WebForms di Vtiger). Sul tab "General" , inseire i valori corrispondenti ai vari campi, sul "Extra fields data" inserire "moduleName=Leads". Quest' utimo, istruisce WebForms di Vtiger su quale sarà il modulo che dovrà gestire la richiesta Curl proveniente dal form Joomla. Da quì, riusciuamo anche ad intuire che, se vogliamo, possiamo anche interagire con altri moduli e tabelle del CRM (provare per credere). Invece , "leadsource=Web Site" servirà a popolare il campo "Fonte Lead" del lead, caratterizzandolo come provenienza dal sito web. Tale campo, è presente nella tabella "vtiger_leaddetails" è può assumere tutti i valori risidenti nella tabella collegata "vtiger_leadsource" e quindi dovrà essere uno dei valori presenti in tale tabella. Si possono ovviamente creare tutti i leadsource che vogliamo.
Sul tab "CURL params" (vedi figura quì sotto) occorre inserire l' url del file "post.php" presente in "............/vtigercrm/modules/Webforms". Questo è il file che gestisce le richieste Curl proveniente dall' esterno (joomla). Abilitare momentaneamente anche il Debug e l' Header (per i test che faremo) e salviamo il tutto.
Test del Form Joomla e verifica dei risultati in Vtiger
Finalmente siamo giunti alla prova finale. Entriamo nel backend di joomla, verifichiamo che il form appena creato tramite Chronoforms sia pubblicato e clicchiamo sul link del form:
Si aprirà una pagina del vostro sito in locale con il form , compilate i campi ed inviate il form a Vtiger con "Submit":
Avendo precedentemente attivato il debug, se tutto va bene e la comunicazione con Vtiger è ok , dovreste ritrovarvi con una risposta come questa:
Ora, non rimane altro che verificare in Vtiger. Dal menù "marketing", oppure anche dal menù "vendite", cliccate su "lead", vi comparirà la lista dei lead e se tutto è andato bene, vedrete il vostro inserimento di prova.
Cliccando sul "lead", potranno essere visualizzati ulteriori dettagli come per esempio il messaggio inviato e la fonte (parametri du cui abbiamo discusso precedentemente)
Bene, l' articolo si conclude quì. Spero che possa essere di aiuto anche a voi. Tengo a precisare comunque che, conosco Jommla da autodidatta o poco più e Vtiger da una settimana quindi, no aspettatevi un gran che di supporto.
Quello che comunque si riesce a fare con ChronoForms e veramente eccezionale. Credo che sia uno dei componenti più importanti di Joomla, in quanto permette veramente una forte personalizzazione del CMS (almeno per certe cose, non per tutto ovviamente). Il buon vales, nei suoi articoli, l' ha già dimostrato e spero quindi che questo ulteriore articolo, possa ancor di più confermare la validità di questo componente.
I merito a Vtiger, credo valga la pena approfondire ulteriormente questo CRM, anchesso Open Source come Joomla!. Mi viene da pensare , per esempio, a Joomla con Virtuemart (che ho utilizzato per prova diverso tempo fa) e Vtiger , magari da provare ad integrare sempre con ChronoForms. Chissà. Potete trovare questo articolo anche su jooma.it e i relativi commenti sul post del forum collegato all' articolo.
Un saluto a tutti.
Pensi che questo articolo possa essere d' aiuto anche ad altri? Allora condividilo subito nel tuo social preferito.
Tweet Segui @Dillofacile
Lascia i tuoi commenti
Login per inviare un commento
Posta commento come visitatore