在Drupal 6.x中使用我的网站范围的联系表单提交邮件时,我会在每封邮件的顶部收到以下消息:
[姓名]使用[www.mysite.com/contact]
上的联系表格发送了一条消息我想删除此邮件。环顾四周,我发现它来自contact.module:
$message['body'][] = t("!name sent a message using the contact form at !form.", array('!name' => $params['name'], '!form' => url($_GET['q'], array('absolute' => TRUE, 'language' => $language))), $language->language);
我做了一些研究,似乎我需要创建一个带有hook_mail_alter()函数的自定义模块来编辑contact.module。谈到这一点,我有点迷茫。有人可以带我完成完成任务的步骤吗?
非常感谢。
答案 0 :(得分:2)
我最近做了类似的事情。这是您可以用来获得所需内容的模板。大多数来自联系模块。下面的代码来自Drupal 7,但应该在Drupal 6中工作。
/**
* Implementation of hook_mail_alter().
*/
function modulename_mail_alter(&$message) {
if ($message['id'] == 'contact_page_mail') {
$language = $message['language'];
$params = $message['params'];
$variables = array(
'!form-url' => url($_GET['q'], array('absolute' => TRUE, 'language' => $language)),
'!sender-name' => format_username($params['sender']),
'!sender-url' => $params['sender']->uid ? url('user/' . $params['sender']->uid, array('absolute' => TRUE, 'language' => $language)) : $params['sender']->mail,
);
$message['body'] = array();
$message['body'][] = t("Your custom message with variables", $variables, array('langcode' => $language->language));
$message['body'][] = $params['message']; // Append the user's message/
}
}