webasyst alpha

  • Фреймворк
  • Приложения
  • Помощь
  • Блог
  • Скачать
  • Демо
  • Возможности
  • Лицензия
  • Документация Webasyst
    • Введение
    • Установка
    • Создание сайта
      • Пример: создание сайта
      • Сайты и маршрутизация
      • Шаблоны и темы оформления
      • Страницы и общие блоки
    • Разработка приложений
      • Пример: приложение «Гостевая книга»
      • Приложение-пустышка
      • Файловая структура
      • Конфигурационные файлы
      • Шаблоны
      • Интерфейс
      • База данных
      • Правила и рекомендации по именованию
      • Маршрутизация в бекенде
      • Маршрутизация во фронтенде
      • Экшены и контроллеры
      • Композитные макеты
      • Права доступа
      • AJAX
      • Переменные окружения
      • Сессии
      • Локализация
      • Мобильная версия
      • Работа с почтой
      • Работа с изображениями
      • Загрузка файлов на сервер
      • Журнал действий пользователя
      • Интеграция с приложением «Сайт»
      • Интеграция с приложением «Контакты»
      • Действия по расписанию
      • Адаптеры авторизации
      • Плагины
    • Настройки сервера
      • Nginx + FastCGI
      • Настройка Cron

Работа с почтой

Функционал работы с почтой в Вебасисте реализован на основе библиотеки Swift Mailer (библиотека включена в состав фреймворка). Следующий пример кода формирования и отправки электронного сообщения наглядно показывает все основные методы работы с почтой:

// Формирование объекта письма с адресатом $to, отправителем $from, 
// темой $subject и текстом $body
$mail_message = new waMailMessage($subject, $body);

// По умолчанию письмо формируется в HTML-формате.
// Если требуется отправка письма в text/plain, необходимо это указать явно:
$mail_message = new waMailMessage($subject, $body, 'text/plain');
  
// Указываем отправителя
$mail_message->setFrom('noreply@webasyst.com', 'Робот Вебасист');
  
// Задаём получателя   
$mail_message->setTo('ivan.sidorov@webasyst.com', 'Иван Сидоров');
// Можно так же указать массив из нескольких получателей в виде
$mail_message->setTo(array('ivan.sidorov@webasyst.com' => 'Иван Сидоров'));  
  
// Добавление получателей
$mail_message->addTo('vasya.pupkin@webasyst.com', 'Вася Пупкин');
$mail_message->addCc('petya.vaskin@webasyst.com', 'Петя Васькин');
$mail_message->addBcc('ivan.karlovich@webasyst.com', 'Иван Карлович');


// Добавление вложенного файла
// $path — полный путь до файла на сервере
// $filename — необязательный параметр: имя файла, которое будет отображаться в письме
$mail_message->addAttachment($path, $filename);

// Отправка письма
$mail_message->send();

Настройка транспорта (SMTP, sendmail)

По умолчанию для отправки писем используется функция mail().
Если вы хотите использовать другие транспорты, например SMTP, вам необходимо создать файл wa-config/mail.php.
Вы можете настроить разные транспорты в зависимости от отправителя (поле From).

  <?php
  return array(
  	// В качестве ключа указывается конкретный email отправитель, домен, или default - для настройки по умолчанию
  	'default' => array(
  		'type' => 'smtp',
  		'host' => 'ВАШ SMTP - сервер',
		'port' => 25
  	),
	// Настройка для всех ящиков @webasyst.com
        'webasyst.com' => array(
  		'type' => 'mail'
  	),
	// Настройка для конкретного ящика
  	'user@webasyst.com' => array(
  		'type' => 'smtp',
  		'host' => 'ВАШ SMTP - сервер',
  		'port' => 25,
		'login' => 'ЛОГИН',
  		'password' => 'ПАРОЛЬ'
  	)
  );

При отправке сообщения подходящий транспорт автоматически будет выбран в зависимости от отправителя.

  • О компании
  • Фреймворк и WebAsyst.ru
    • Language
      • Русский
      • English

© 2011 Webasyst