此页面使用Drupals联系表单发送电子邮件:http://www.westlake.school.nz/contact
问题是,学校员工使用前景。当他们收到来自父母等的电子邮件时,电子邮件将以的形式出现“来自:admin@example.com代表 西湖男孩高中“
在Gmail中,它可以正确显示,例如
来自Westlake男子高中 parentsEmailAddress@yahoo.com
不幸的是,我不能告诉整个学校的工作人员停止使用Outlook和交换。
可以修改Drupals drupal_mail函数以解决此问题吗?
来自contact.pages.inc:
drupal_mail('contact', 'page_mail', $contact['recipients'], language_default(), $values, $from);
答案 0 :(得分:2)
tmsimont在此网址(http://api.drupal.org/api/function/drupal_mail#comment-3243)上解释了
contact_mail_page_submit使用的drupal_mail函数的$ from参数只会改变 从标题,而不是发件人,错误 - 到 或者返回路径。
。
包含更多详细信息(来自drupal_mail()
函数的代码)
line 3 - $default_from = variable_get('site_mail', ini_get('sendmail_from'));
line 9 - 'from' => isset($from) ? $from : $default_from,
line 23 - if ($default_from) {
line 24 - // To prevent e-mail from looking like spam, the addresses in the Sender and
line 25 - // Return-Path headers should have a domain authorized to use the originating
line 26 - // SMTP server. Errors-To is redundant, but shouldn't hurt.
line 27 - $headers['From'] = $headers['Sender'] = $headers['Return-Path'] = $headers['Errors-To'] = $default_from;
line 28 - }
line 29 - if ($from) {
line 30 - $headers['From'] = $from;
line 31 - }
line 32 - $message['headers'] = $headers;
因此,要解决您的问题,您可以实现hook_mail函数(http://drupal.org/node/358855#comment-2079266)
可在此处找到更多资源:
1 - http://drupal.org/node/656472
2 - http://drupal.org/node/861562
3 - http://www.nmglc.co.uk/content/overriding-drupals-mail-function