drupal_mail()

Dobrý den,

mám problém s odesíláním e-mailu v Drupalu.

Používám funkci drupal_mail().

V hook_submit mám tento kód:

 

$values = $form_state['values'];
$to = 'email@seznam.cz';
$from = $values['mail'];


  drupal_mail('nazev_modulu', 'page_mail', $to, language_default(), $values, $from);

 

Mám problém s tím, že mi vždy dojde prázdný e-mail. Vyplněná je pouze položka $from.

Nevíte prosím, kde dělám chybu?

Profile picture for user Jan Polzer

Dobrý den. Já jsem používal zatím jenom vylepšený mime mail, takže netuším, kde jsou záludnosti této funkce. Ale zkusil bych si ověřit, že ve $values máte parametry přímo pro mail. Tipuju, že asi ne. Čili podobně jako hovoří příklad na api.drupal.org:

$values['subject'] = 'Předmět zprávy';
$values['body'][] = 'Text zprávy';

návštěvník

Děkuji za snahu a rychlou odpověď!
Vaše rada mě "nakopla". Pročetl jsem si pečlivěji drupal api a bylo potřeba použít ještě hook_mail(), který zachytává Drupal_mail().

Takže, parametr $params v hook_mail je pole hodnot předaných funkcí Drupal_mail() ( pole hodnot z formulářových polí ).
Použítí v hook_mail je potom následující:

$message['subject'] = $params['subject'];
$message['body'][] = $params['body'];

E-mail se poté celý odešle.

Odpovědět

Obsah tohoto pole je soukromý a nebude veřejně zobrazen.

Odesláním komentáře souhlasíte s podmínkami Ochrany osobních údajů

reklama
Moje kniha o CMS Drupal

 

Kniha 333 tipů a triků pro Drupal 9


Více na KnihyPolzer.cz

Sledujte Maxiorla na Facebooku

Maxiorel na Facebooku

Poslední komentáře
Hosting pro Drupal a WordPress

Hledáte český webhosting vhodný nejenom pro redakční systém Drupal? Tak vyzkoušejte Webhosting C4 za 1200 Kč na rok s doménou v ceně, 20 GB prostoru a automatické navyšováním o 2 GB každý rok. Podrobnosti zde.

@maxiorel na Twitteru

Maxiorel na Twitteru