drupal_mail()返回true但无法发送邮件

时间:2018-06-15 10:23:57

标签: drupal-7 drupal-hooks

我已经编写了一个带有自定义表单api的drupal模块,该模块将在每次提交时向我的收件箱发送电子邮件。我在drupal_mail下写了一个条件,该条件返回true但显示错误消息“无法发送电子邮件。如果问题仍然存在,请联系站点管理员。”

在我的代码下面:

function my_module_name_mail($key, &$message, $params)
{
    $headers = array(
    'MIME-Version' => '1.0',
    'Content-Type' => 'text/html; charset=UTF-8;',
    'Content-Transfer-Encoding' => '8Bit',
    'X-Mailer' => 'Drupal'
);

    foreach ($headers as $key => $value) {
    $message['headers'][$key] = $value;
    }

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

function my_module_name_form_submit($form, &$form_state)
{
    $from = $form_state['values']['email'];
    $body= 'Name: '.$name.'<br />Email: '.$email;
    $to = "my_mail_id@example.com";

    $params = array(
    'body' => $body,
    'subject' => 'Website Information Request',
);

drupal_mail('my_module_name', 'some_mail_key', $to, language_default(), $params, $from, TRUE);
}

1 个答案:

答案 0 :(得分:0)

检查您的Drupal日志以获取更多线索。启用devel / devel-admin个模块。一旦你这样做,drupal_mail会将电子邮件传送到你的临时目录,如果你的电子邮件服务器或配置出现问题,这将帮助你缩小范围。