как сделать cc на drupal_mail - PullRequest
0 голосов
/ 31 августа 2011

Я попробовал следующее:

function tester_mail($key, &$message, $params) {
    switch($key) {
      case 'notice':
        $message['subject'] = t('Notification from site');
        $message['body'][] = t("Dear username\n\nThere is new content available on the site.{$params['node']}");
        $message['headers']['CC'] = "tester@gmail.com";
        break;
    }
  }

Функция работает, я получаю письмо в cc.Тем не менее я получаю сообщение об ошибке в пользовательском интерфейсе:

Устаревшая функция: функция split () устарела в SmtpMailSystem-> mail () (строка 243 из /opt/....../htdocs/sites / all / modules / smtp / smtp.mail.inc).

1 Ответ

2 голосов
/ 31 августа 2011

Функция split() устарела в PHP 5.3.0, и PHP просто предупреждает вас об этом факте. Вы можете попробовать настроить параметры error_reporting (возможно, в .htaccess или в php.ini, если у вас есть такой доступ), чтобы устаревшие функции не вызывали уведомление. Здесь есть хорошая информация , с которой можно начать.

Страница документации для split(): http://php.net/manual/en/function.split.php

Редактировать
В качестве альтернативы вы можете просто отредактировать код в строке 243 файла smtp.mail.inc и изменить его следующим образом:

$ccrecipients = explode(',', $value);

Это будет иметь точно такой же эффект, но не использует устаревшую функцию.

Имейте в виду, что Drupal 7 модуля SMTP в настоящее время находится на стадии разработки (стабильных выпусков нет), поэтому следует ожидать такого рода ошибок. Если вы этого еще не сделали, возможно, вам стоит подумать о том, чтобы поднять проблему на странице модуля: http://drupal.org/project/smtp

...