hook_mail_alter
- mediamosa-21
hook_mail_alter(&$message)
Alter an email message created with the drupal_mail() function.
hook_mail_alter() allows modification of email messages created and sent
with drupal_mail(). Usage examples include adding and/or changing message
text, message fields, and message headers.
Email messages sent using functions other than drupal_mail() will not
invoke hook_mail_alter(). For example, a contributed module directly
calling the drupal_mail_system()->mail() or PHP mail() function
will not invoke this hook. All core modules use drupal_mail() for
messaging, it is best practice but not mandatory in contributed modules.
See also
drupal_mail()
Parameters
$message
An array containing the message data. Keys in this array include:
- 'id':
The drupal_mail() id of the message. Look at module source code or
drupal_mail() for possible id values.
- 'to':
The address or addresses the message will be sent to. The
formatting of this string must comply with RFC 2822.
- 'from':
The address the message will be marked as being from, which is
either a custom address or the site-wide default email address.
- 'subject':
Subject of the email to be sent. This must not contain any newline
characters, or the email may not be sent properly.
- 'body':
An array of strings containing the message text. The message body is
created by concatenating the individual array strings into a single text
string using "\n\n" as a separator.
- 'headers':
Associative array containing mail headers, such as From, Sender,
MIME-Version, Content-Type, etc.
- 'params':
An array of optional parameters supplied by the caller of drupal_mail()
that is used to build the message before hook_mail_alter() is invoked.
- 'language':
The language object used to build the message before hook_mail_alter()
is invoked.
Related topics
- Hooks
- Allow modules to interact with the Drupal core.
Code
modules/system/system.api.php, line 972
<?php
function hook_mail_alter(&$message) {
if ($message['id'] == 'modulename_messagekey') {
$message['body'][] = "--\nMail sent out from " . variable_get('sitename', t('Drupal'));
}
}
?>