[QUOTE]Ростислав Хацинский написал:
Возможно кому то будет полезно.
Чтобы отключить вывод этого текста нужно:
Настройки -> Настройки продукта -> Настройки модулей -> Главный модуль (вкладка Почта и СМС)
Снимаем галочку с "Генерировать текстовую версию для html-писем".
В моем случае помогло[/QUOTE]
До того момента, когда потребуется отправлять вложения))
В моем случае я парсил письмо сторонней библиотекой [URL=https://github.com/zbateson/mail-mime-parser]https://github.com/zbateson/mail-mime-parser[/URL]
[CODE]use PHPMailer\PHPMailer\PHPMailer;
use ZBateson\MailMimeParser;
$mail = new PHPMailer(true);
$mail->CharSet = 'utf-8';
$message = MailMimeParser\Message::from($rawMessage);
foreach ($message->getAllHeaders() as $header) {
if ($header->getName() === 'X-Priority') {
$mail->Priority = $header->getRawValue();
continue;
} elseif ($header->getName() === 'Date') {
$mail->MessageDate = $header->getRawValue();
continue;
} elseif (in_array($header->getName(), ['MIME-Version', 'Content-Type', 'Content-Transfer-Encoding'])) {
continue;
}
if ($header instanceof MailMimeParser\Header\AddressHeader) {
if (!count($header->getAddresses())) {
continue;
}
if (in_array($header->getName(), ['CC', 'BCC', 'Reply-To'])) {
foreach ($header->getAddresses() as $email) {
if ($header->getName() === 'CC') {
$mail->addCC($email->getValue(), $email->getName());
} elseif ($header->getName() === 'BCC') {
$mail->addBCC($email->getValue(), $email->getName());
} elseif ($header->getName() === 'Reply-To') {
$mail->addReplyTo($email->getValue(), $email->getName());
}
}
} elseif ($header->getName() === 'From' && $mail->From == '') {
foreach ($header->getAddresses() as $email) {
$mail->setFrom($email->getValue(), $email->getName());
}
}
} elseif ($header instanceof MailMimeParser\Header\GenericHeader) {
$mail->addCustomHeader($header->getName(), $header->getRawValue());
}
}
if ($message->getContentType() !== PHPMailer::CONTENT_TYPE_PLAINTEXT) {
$mail->isHTML(true);
$mail->Body = $message->getHtmlContent();
$mail->AltBody = $message->getTextContent();
} else {
$mail->Body = $message->getTextContent();
}
if ($message->getAttachmentCount() > 0) {
/** @var MailMimeParser\Message\Part\MimePart $attach */
foreach ($message->getAllAttachmentParts() as $attach) {
/** @var MailMimeParser\Header\ParameterHeader $contentType */
$contentType = $attach->getHeader('Content-Type');
$mail->addStringAttachment(
$attach->getContent(),
$contentType->getValueFor('name'),
'base64',
$contentType->getValue()
);
}
}
$mail->send();
[/CODE]
Возможно кому то будет полезно.
Чтобы отключить вывод этого текста нужно:
Настройки -> Настройки продукта -> Настройки модулей -> Главный модуль (вкладка Почта и СМС)
Снимаем галочку с "Генерировать текстовую версию для html-писем".
В моем случае помогло[/QUOTE]
До того момента, когда потребуется отправлять вложения))
В моем случае я парсил письмо сторонней библиотекой [URL=https://github.com/zbateson/mail-mime-parser]https://github.com/zbateson/mail-mime-parser[/URL]
[CODE]use PHPMailer\PHPMailer\PHPMailer;
use ZBateson\MailMimeParser;
$mail = new PHPMailer(true);
$mail->CharSet = 'utf-8';
$message = MailMimeParser\Message::from($rawMessage);
foreach ($message->getAllHeaders() as $header) {
if ($header->getName() === 'X-Priority') {
$mail->Priority = $header->getRawValue();
continue;
} elseif ($header->getName() === 'Date') {
$mail->MessageDate = $header->getRawValue();
continue;
} elseif (in_array($header->getName(), ['MIME-Version', 'Content-Type', 'Content-Transfer-Encoding'])) {
continue;
}
if ($header instanceof MailMimeParser\Header\AddressHeader) {
if (!count($header->getAddresses())) {
continue;
}
if (in_array($header->getName(), ['CC', 'BCC', 'Reply-To'])) {
foreach ($header->getAddresses() as $email) {
if ($header->getName() === 'CC') {
$mail->addCC($email->getValue(), $email->getName());
} elseif ($header->getName() === 'BCC') {
$mail->addBCC($email->getValue(), $email->getName());
} elseif ($header->getName() === 'Reply-To') {
$mail->addReplyTo($email->getValue(), $email->getName());
}
}
} elseif ($header->getName() === 'From' && $mail->From == '') {
foreach ($header->getAddresses() as $email) {
$mail->setFrom($email->getValue(), $email->getName());
}
}
} elseif ($header instanceof MailMimeParser\Header\GenericHeader) {
$mail->addCustomHeader($header->getName(), $header->getRawValue());
}
}
if ($message->getContentType() !== PHPMailer::CONTENT_TYPE_PLAINTEXT) {
$mail->isHTML(true);
$mail->Body = $message->getHtmlContent();
$mail->AltBody = $message->getTextContent();
} else {
$mail->Body = $message->getTextContent();
}
if ($message->getAttachmentCount() > 0) {
/** @var MailMimeParser\Message\Part\MimePart $attach */
foreach ($message->getAllAttachmentParts() as $attach) {
/** @var MailMimeParser\Header\ParameterHeader $contentType */
$contentType = $attach->getHeader('Content-Type');
$mail->addStringAttachment(
$attach->getContent(),
$contentType->getValueFor('name'),
'base64',
$contentType->getValue()
);
}
}
$mail->send();
[/CODE]