Следующая функция содержится в include/mail.inc Drupal6. Для отправки почты она использует настройки SMTP по умолчанию, спрятанные в файле с именем «php.ini».
function drupal_mail_send($message) {
// Allow for a custom mail backend.
if (variable_get('smtp_library', '') && file_exists(variable_get('smtp_library', ''))) {
include_once './'. variable_get('smtp_library', '');
return drupal_mail_wrapper($message);
}
else {
$mimeheaders = array();
foreach ($message['headers'] as $name => $value) {
$mimeheaders[] = $name .': '. mime_header_encode($value);
}
return mail(
$message['to'],
mime_header_encode($message['subject']),
// Note: e-mail uses CRLF for line-endings, but PHP's API requires LF.
// They will appear correctly in the actual e-mail that is sent.
str_replace("\r", '', $message['body']),
// For headers, PHP's API suggests that we use CRLF normally,
// but some MTAs incorrecly replace LF with CRLF. See #234403.
join("\n", $mimeheaders)
);
}
}
но я использую общий хост, поэтому я не могу редактировать php.ini, я хочу отредактировать вышеуказанную функцию "drupal_mail_send", добавьте приведенные ниже коды в эту функцию, чтобы что он может обходить функцию PHP mail() и отправлять электронную почту прямо на мой любимый SMTP-сервер.
Следующая функция содержится в include/mail.inc Drupal6. Для отправки почты она использует настройки SMTP по умолчанию, спрятанные в файле с именем «php.ini».
[code]function drupal_mail_send($message) { // Allow for a custom mail backend. if (variable_get('smtp_library', '') && file_exists(variable_get('smtp_library', ''))) { include_once './'. variable_get('smtp_library', ''); return drupal_mail_wrapper($message); } else { $mimeheaders = array(); foreach ($message['headers'] as $name => $value) { $mimeheaders[] = $name .': '. mime_header_encode($value); } return mail( $message['to'], mime_header_encode($message['subject']), // Note: e-mail uses CRLF for line-endings, but PHP's API requires LF. // They will appear correctly in the actual e-mail that is sent. str_replace("\r", '', $message['body']), // For headers, PHP's API suggests that we use CRLF normally, // but some MTAs incorrecly replace LF with CRLF. See #234403. join("\n", $mimeheaders) ); } } [/code]
но я использую общий хост, поэтому я не могу редактировать php.ini, я хочу отредактировать вышеуказанную функцию "drupal_mail_send", добавьте приведенные ниже коды в эту функцию, чтобы что он может обходить функцию PHP mail() и отправлять электронную почту прямо на мой любимый SMTP-сервер.
[code]include('Mail.php');
$recipients = array( 'someone@example.com' ); # Can be one or more emails