Ciao a tutti,
vi scrivo in quanto vorrei sapere se è possibile avere notifica di avvenuto invio dell'email quando si usa il modulo contatti. Di seguito il link al quale faccio riferimento:
modulo di contatto
In seguito all'incio della richiesta di contatto si viene reindirizzati direttamente alla home del sito senza alcun messaggio di avvenuto invio.
Grazie.
Agostino,
www.casa-vacanze-sicilia.it
La funzione drupal_mail agisce così:
https://api.drupal.org/api/drupal/includes!mail.inc/function/drupal_mail/7
con l'ultimo parametro $send = TRUE che indica che si chiamerà drupal_mail_system () -> mail () per consegnare il messaggio, e memorizzare il risultato in $messaggio ['result']. Moduli di attuazione hook_mail_alter () possono annullare l'invio impostando $message['send'] a FALSE.
Nel modulo contatti di default è true in quanto manca il 7° parametro:
drupal_mail('contact', 'page_mail', $to, language_default(), $values, $from);
ciò significa che si ha sempre una conferma di invio del report dei log in
?q=it/admin/reports/dblog
Nella pagina indicata troverai anche:
a struttura array $ messaggio contenente tutti i dettagli del messaggio. Se già inviato ($ invio = TRUE), allora l'elemento 'risultato' conterrà l'indicatore di successo di e-mail, il fallimento essendo già scritto al wathdog. (Il successo non significa altro che il messaggio che viene accettata a livello php, che ancora non garantisce di essere consegnato.)
E ancora analizzando l codice di drupal_mail:
if (!$message['result']) {
watchdog('mail', 'Error sending e-mail.....
Ne consegue che se non viene inviato il messaggio nel report dei log trovi traccia di ciò.
Bye