Скачайте приложение и протестируйте бесплатно в течение 10 дней
Валюта Выберите язык Выбрать регион

Цель учебного пособия

Примечание: Этот учебник ориентирован на разработчиков и показывает, как встроенная почтовая система CMS bluetronix может быть вызвана непосредственно через PHP.

CMS bluetronix предоставляет центральные функции PHP для отправки электронной почты.

Таким образом, соединения SMTP, почтовые аккаунты и основные функции отправки не нужно будет заново программировать для каждого собственного скрипта PHP.

Для прямой отправки электронной почты и рассылки новостей доступна следующая функция:

BlueSMTPMail($MailType,$MailAccount,$SMTPType,$From,$To,$NewsletterTo,$Subject,$TextContent,$HTMLContent,$Attachments,$EmbedImages,$MailPlaceholderReplacement,$FormEntry);

Для отправки форм электронной почты также доступна следующая функция:

BlueFormSend($SMTPType,$SendMail,$SendSubject,$CopyToCustomer,$TextToCustomer,$FormArchive,$FormID,$SendTo);

BlueSMTPMail()

С помощью BlueSMTPMail() можно отправлять обычные электронные письма и рассылки через центральную почтовую систему CMS bluetronix.

Вызов функции выглядит следующим образом:

BlueSMTPMail(
   $MailType,
   $MailAccount,
   $SMTPType,
   $From,
   $To,
   $NewsletterTo,
   $Subject,
   $TextContent,
   $HTMLContent,
   $Attachments,
   $EmbedImages,
   $MailPlaceholderReplacement,
   $FormEntry
);

$MailType

Определяет, какой тип электронной почты должен быть отправлен.

Допустимые значения:

Mail
Newsletter

Пример:

$MailType = "Mail";

или:

$MailType = "Newsletter";

$MailAccount

$MailAccount определяет почтовый аккаунт, настройки SMTP которого будут использованы.

С помощью этого значения загружаются соответствующие данные конфигурации SMTP из таблиц базы данных CMS.

Выбор конфигурации также зависит от $SMTPType.

$SMTPType

Определяет, будет ли использоваться внутренний или внешний почтовый аккаунт.

Допустимые значения:

Intern
Extern

Внутренний

При:

$SMTPType = "Intern";

используется почтовый аккаунт, который был настроен непосредственно в CMS bluetronix.

Аккаунты находятся по адресу:

Email → Accounts

Адрес отправителя, используемый в $From, должен быть там как аккаунт.

Внешний

При:

$SMTPType = "Extern";

используются внешние данные для доступа к SMTP.

Они управляются в CMS по адресу:

Email → Server - Extern

Адрес отправителя, используемый в $From, должен быть там должным образом настроен.

Адрес отправителя, указанный в $From, должен быть соответствующим образом настроен.

$From

Содержит адрес электронной почты отправителя.

Пример:

$From = "info@example.com";

Адрес электронной почты должен соответствовать выбранной SMTP-конфигурации.

$To

Содержит адрес электронной почты получателя обычного письма.

Пример:

$To = "customer@example.com";

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

$NewsletterTo

$NewsletterTo используется при отправке информационных рассылок.

Переменная содержит несколько адресов электронной почты в виде текста. Каждый адрес отделен переносом строки.

Пример:

$NewsletterTo = "customer1@example.com\ncustomer2@example.com\ncustomer3@example.com";

$Subject

Содержит тему письма.

Пример:

$Subject = "Welcome to our website";

$TextContent

Содержит чистый текст письма.

Эта часть может использоваться, например, почтовыми программами, которые не отображают HTML-письма.

Пример:

$TextContent = "Thank you for your request.";

$HTMLContent

Содержит HTML-часть письма.

Пример:

$HTMLContent = "<h1>Thank you</h1><p>Thank you for your request.</p>";

С ее помощью можно отправлять форматированные письма с заголовками, текстами, ссылками, изображениями и другими HTML-элементами.

$Attachments

С помощью $Attachments можно прикреплять файлы к письму.

Файлы указываются по их пути внутри веб-сайта.

Пример:

$Attachments = "/bx_doc/Intro.pdf";

При наличии нескольких вложений отдельные пути к файлам отделяются переносом строки.

Пример:

$Attachments = "/bx_doc/Intro.pdf\n/bx_doc/PriceList.pdf";

$EmbedImages

С помощью $EmbedImages можно указать, следует ли встраивать изображения прямо в письмо.

Пример:

$EmbedImages = "ja";

При включенной опции изображения, используемые в HTML-письме, интегрируются непосредственно в письмо и не загружаются только через внешние URL.

Таким образом, изображения могут быть доступны получателю непосредственно в письме, не требуя предварительной загрузки с веб-сервера.

$MailPlaceholderReplacement

С помощью $MailPlaceholderReplacement можно заменять заполнители внутри:

$TextContent
$HTMLContent

индивидуальными значениями.

Принцип таков:

Search
   ↓
Replace

Таким образом, можно создавать персонализированный контент внутри письма.

Типичные варианты использования:

  • Name des Empfängers
  • Kundennummer
  • Bestellnummer
  • individuelle Links
  • weitere dynamische Inhalte

$FormEntry

С помощью $FormEntry можно указать, следует ли дополнительно сохранять рассылку в архиве форм.

При:

$FormEntry = "JA";

дополнительно добавляется запись в таблице базы данных:

00_form

сохранено.

Это позволяет документировать отправку одновременно как запись формы и архив.

Пример: отправка обычного письма

Следующий пример отправляет стандартное HTML- и текстовое письмо через внутренний почтовый аккаунт.

$MailType                  = "Mail";
$MailAccount               = "info@example.com";
$SMTPType                  = "Intern";
$From                      = "info@example.com";
$To                        = "customer@example.com";
$NewsletterTo              = "";
$Subject                   = "Your request";
$TextContent               = "Thank you for your request.";
$HTMLContent               = "<h1>Thank you</h1><p>Thank you for your request.</p>";
$Attachments               = "/bx_doc/Intro.pdf";
$EmbedImages               = "ja";
$MailPlaceholderReplacement = "";
$FormEntry                 = "NEIN";

BlueSMTPMail($MailType,$MailAccount,$SMTPType,$From,$To,$NewsletterTo,$Subject,$TextContent,$HTMLContent,$Attachments,$EmbedImages,$MailPlaceholderReplacement,$FormEntry);

Упрощенная последовательность действий выглядит так:

PHP
   ↓
BlueSMTPMail()
   ↓
internen Mail-Account laden
   ↓
SMTP-Verbindung verwenden
   ↓
E-Mail erzeugen
   ↓
E-Mail versenden
   ↓
MailCache-Eintrag erzeugen

Пример: отправка информационного бюллетеня

Для рассылки новостей будет установлен $MailType на:

Newsletter

установлено.

Получатели затем передаются через $NewsletterTo.

$MailType                  = "Newsletter";
$MailAccount               = "newsletter@example.com";
$SMTPType                  = "Intern";
$From                      = "newsletter@example.com";
$To                        = "";
$NewsletterTo              = "customer1@example.com\ncustomer2@example.com\ncustomer3@example.com";
$Subject                   = "Our latest news";
$TextContent               = "Discover our latest news and products.";
$HTMLContent               = "<h1>Our latest news</h1><p>Discover our latest news and products.</p>";
$Attachments               = "";
$EmbedImages               = "ja";
$MailPlaceholderReplacement = "";
$FormEntry                 = "NEIN";

BlueSMTPMail($MailType,$MailAccount,$SMTPType,$From,$To,$NewsletterTo,$Subject,$TextContent,$HTMLContent,$Attachments,$EmbedImages,$MailPlaceholderReplacement,$FormEntry);

Отдельные получатели рассылки будут разделены в $NewsletterTo с помощью переносов строк.

Использовать внешнее SMTP-соединение

Если необходимо использовать внешний почтовый сервер, то:

$SMTPType = "Extern";

установлено.

Данные для доступа к SMTP должны быть заранее настроены по адресу:

Email → Server - Extern

.

Пример:

$SMTPType    = "Extern";
$From        = "mail@external-domain.com";
$MailAccount = "mail@external-domain.com";

BlueFormSend()

В дополнение к прямой отправке почты доступна функция:

BlueFormSend($SMTPType,$SendMail,$SendSubject,$CopyToCustomer,$TextToCustomer,$FormArchive,$FormID,$SendTo);

.

Эта функция специально предназначена для отправки электронной почты в сочетании с формами CMS.

Переменные уже полностью написаны на английском языке.

Параметры BlueFormSend()

Переменная Использование
$SMTPType Выбор внутренней или внешней отправки SMTP
$SendMail Управляет отправкой почты формы
$SendSubject Тема письма формы
$CopyToCustomer Определяет, получит ли клиент копию
$TextToCustomer Текст для сообщения клиенту
$FormArchive Управляет архивированием формы
$FormID ID соответствующей формы
$SendTo Получатель электронной почты формы

MailCache

Каждый вызов BlueSMTPMail() дополнительно создает запись в таблице базы данных:

00_MailCache

С помощью этой таблицы можно контролировать статус отправки электронной почты.

Например, можно проверить, успешно ли была обработана или отправлена электронная почта.

Записи MailCache используются для:

1 Woche

сохранено.

Типичный процесс отправки письма

PHP-Skript
   ↓
BlueSMTPMail()
   ↓
MailType prüfen
   ↓
MailAccount auswählen
   ↓
SMTPType prüfen
   ↓
SMTP-Konfiguration laden
   ↓
Empfänger bestimmen
   ↓
Text- und HTML-Inhalt erstellen
   ↓
Platzhalter ersetzen
   ↓
Anhänge hinzufügen
   ↓
Bilder gegebenenfalls einbetten
   ↓
E-Mail versenden
   ↓
00_MailCache aktualisieren
   ↓
optional 00_form speichern

Обзор параметров BlueSMTPMail

Переменная Значение
$MailType Почта или рассылка
$MailAccount Используемый почтовый аккаунт
$SMTPType Внутренний или Внешний
$From Адрес отправителя
$To Получатель обычной электронной почты
$NewsletterTo Получатели рассылки, разделенные переносами строк
$Subject Тема письма
$TextContent Часть текста письма
$HTMLContent HTML-часть письма
$Attachments Пути к附件ам
$EmbedImages Встраивание изображений непосредственно в письмо
$MailPlaceholderReplacement Замещение плейсхолдеров в содержимом письма
$FormEntry Создание необязательной записи в 00_form

Zusammenfassung

Центральная почтовая система CMS bluetronix может быть вызвана непосредственно из собственного PHP-кода.

Für normalen E-Mail- und Newsletter-Versand wird verwendet:

BlueSMTPMail($MailType,$MailAccount,$SMTPType,$From,$To,$NewsletterTo,$Subject,$TextContent,$HTMLContent,$Attachments,$EmbedImages,$MailPlaceholderReplacement,$FormEntry);

Для форм CMS дополнительно доступно:

BlueFormSend($SMTPType,$SendMail,$SendSubject,$CopyToCustomer,$TextToCustomer,$FormArchive,$FormID,$SendTo);

Die SMTP-Konfiguration kann entweder über:

Внутренний
→ Email → Аккаунты

или:

Extern
→ Email → Server - Extern

erfolgen.

Каждая отправка почты дополнительно проводится через:

00_MailCache

protokolliert. Die entsprechenden Cache-Einträge bleiben eine Woche erhalten.

Таким образом, разработчики могут использовать уже существующую почтовую систему CMS bluetronix непосредственно из своих PHP-скриптов, не реализуя самостоятельно всю логику SMTP.

Часто задаваемые вопросы

что часто спрашивают клиенты

Какие функции предоставляет центральная почтовая система для PHP?

Для обычных электронных писем и информационных бюллетеней используйте BlueSMTPMail(). Для отправки в связке с формами CMS дополнительно доступна BlueFormSend().

Где найти внутренние электронные почтовые аккаунты?

Внутренние почтовые аккаунты настраиваются в Email → Аккаунты. Для их отправки установите $SMTPType на Внутренний. Адрес отправителя должен принадлежать созданному аккаунту.

Как использовать внешний SMTP-сервер?

Настройте учетные данные в Email → Сервер - Внешний и используйте $SMTPType = "Внешний";. Адрес отправителя должен соответствовать выбранной конфигурации.

В чем разница между письмом и информационным бюллетенем?

С помощью $MailType = "Mail"; отправляется обычное электронное письмо, адресат которого указан в $To. Для рассылки новостей установи $MailType = "Newsletter"; и передай адреса получателей через $NewsletterTo.

Как передать несколько адресатов для рассылки?

Введите адреса в $NewsletterTo и разделите каждый адрес электронной почты переводом строки.

Могу ли я отправить текст и HTML в одном и том же электронном письме?

Да. Обычный текст размещается в $TextContent, в то время как отформатированное HTML-сообщение передается через $HTMLContent.

Как я могу прикрепить файлы к электронному письму?

С помощью $Attachments ты передаешь пути к файлам на веб-сайте. Для нескольких вложений пути разделяются переносами строк.

Как я могу встроить изображения прямо в электронное письмо?

Шаблон использует для этого $EmbedImages = "да";. Это позволяет встраивать изображения, используемые в HTML-сообщении, напрямую в соответствии с описанной функцией CMS.

Для чего используется MailPlaceholderReplacement?

С его помощью ты можешь заменять заполнитель в текстовом и HTML-содержимом на индивидуальные значения, например, для имен, номеров заказов или личных ссылок. Шаблон описывает принцип поиска и замены, но не конкретный формат передачи.

Как я архивирую отправку дополнительно как запись формы?

Установи значение $FormEntry = "ДА"; в BlueSMTPMail(). По шаблону будет дополнительно сохранена запись в 00_form.

Где я могу проверить статус отправки?

Шаблон описывает для этого таблицу 00_MailCache. Записи о доставке, созданные там, будут храниться одну неделю. Запись о обработке сама по себе не является дополнительным доказательством доставки получателю.

Когда я использую BlueFormSend()?

BlueFormSend() предназначен для отправки электронной почты с использованием форм CMS. К параметрам относятся, среди прочего, управление отправкой, тема, копия для клиента, архив форм и ID формы.

CMS