Zaimplementuj wiadomość e-mail za pomocą hook_mail:
function MODULENAME_mail ($key,&$message, $params){switch($key){case'mymail':// Set headers etc
$message['to']='[email protected]';
$message['subject']= t('Hello');
$message['body'][]= t('Hello @username,', array('@username'=> $params['username']));
$message['body'][]= t('The main part of the message.');break;}}
Ma rację, ale wyjaśnienie nieco hook_mail zapewnia sposób na uporządkowanie i motywowanie wiadomości e-mail w oparciu o dowolny zdefiniowany klucz. drupal_mail () to coś, co wywołuje się, aby wysłać wiadomość e-mail. Przekaż klucz do struktury, której chcesz użyć. (i moduł, który odpowiada na ten klucz)
Jason Smith,
9
W tym przykładzie $message['to']jest na stałe zakodowany [email protected]. Pomiń to, a wiadomość zostanie wysłana do odbiorcy, który jest określony, kiedy drupal_mail()zostanie wywołany.
pfrenssen,
12
Jeśli chcesz prostszego sposobu wysyłania wiadomości e-mail, sprawdź Simple Mail ; to moduł, nad którym pracuję, aby znacznie ułatwić wysyłanie e-maili za pomocą Drupala 7+ i nie wymaga żadnych dodatkowych implementacji haczyków ani wiedzy o MailSystem. Wysłanie wiadomości e-mail jest tak proste, jak:
Możesz użyć tego kodu w dowolnym haku w swoim własnym module:
function yourmodulename_mail($from ='default_from', $to, $subject, $message){
$my_module ='yourmodulename';
$my_mail_token = microtime();if($from =='default_from'){// Change this to your own default 'from' email address.
$from = variable_get('system_mail','[email protected]');}
$message = array('id'=> $my_module .'_'. $my_mail_token,'to'=> $to,'subject'=> $subject,'body'=> array($message),'headers'=> array('From'=> $from,'Sender'=> $from,'Return-Path'=> $from,),);
$system = drupal_mail_system($my_module, $my_mail_token);
$message = $system->format($message);if($system->mail($message)){return TRUE;}else{return FALSE;}}
Następnie możesz użyć powyższej funkcji w następujący sposób:
$user = user_load($userid);// load a user using its uid
$usermail =(string) $user->mail;// load user email to send a mail to it OR you can specify an email here to which the email will be sent
customdraw_mail('default_from', $usermail,'You Have Won a Draw -- this is the subject','Congrats! You have won a draw --this is the body');
Odpowiedzi:
Za pomocą hook_mail i drupal_mail możesz utworzyć i wysłać wiadomość e-mail.
Zaimplementuj wiadomość e-mail za pomocą hook_mail:
Aby wysłać wiadomość, użyj drupal_mail:
Oczywiście zastąp parametry: $ key powinien być równy „mymail”
Wiadomość e-mail jest wysyłana w kilku krokach:
źródło
$message['to']
jest na stałe zakodowany[email protected]
. Pomiń to, a wiadomość zostanie wysłana do odbiorcy, który jest określony, kiedydrupal_mail()
zostanie wywołany.Jeśli chcesz prostszego sposobu wysyłania wiadomości e-mail, sprawdź Simple Mail ; to moduł, nad którym pracuję, aby znacznie ułatwić wysyłanie e-maili za pomocą Drupala 7+ i nie wymaga żadnych dodatkowych implementacji haczyków ani wiedzy o MailSystem. Wysłanie wiadomości e-mail jest tak proste, jak:
źródło
Można użyć prostszy sposób wysyłania wiadomości e-mail, sprawdź mailsystem ; to jest moduł.
źródło
Możesz użyć tego kodu w dowolnym haku w swoim własnym module:
Następnie możesz użyć powyższej funkcji w następujący sposób:
źródło