Письма с нашего сайта (о заказе, о поступлении товара и др.) отправляются через SMTP Яндекса. Сегодня все письма стали приходить без темы, т.е. тема письма внезапно стала пустая! Обратились в техподдержку Яндекса с этим и вот их ответ:
Добрый день Павел! Мы обновили правила по обработке заголовков писем. Теперь использовать кодировки UTF-8 нельзя. Рекомендуем формировать заголовки и тело писем в соответствии с RFC-стандартами ( https://datatracker.ietf.org/doc/html/rfc5322#section-2.2), корректно обрабатывая и экранируя непечатные символы.
Нужна помощь поправить это на сайте. Полагаю, что поправить нужно будет файл system/library/mail.php, который прилагаю. Могу дать доступ к сайту. Обращаю внимание еще раз, отправка не через PHPMAIL а через SMTP.
Цену пишите вы, я не знаю насколько сложная проблема!
Оставлять заявки могут только авторизованные пользователи.
Готов выполнить задание. Занимаюсь созданием и доработкой сайтов на OpenCart более 10 лет. Примеры моих работ см. в портфолио.
Мои контакты:
Телеграм: v21021
Скайп: volma1803
Здравствуйте!
Я могу вам предложить:
Логотип;
Дизайн веб-сайта и мобильного приложения;
Адаптивная CCS+JS вёрстка сайта;
Крутой "Сайт под ключ";
Программирование – WordPress, ModX, Bitrix, OpenCart, Drupal, и др.;
Программирование очень сложных проектов – Django, Symfony, Laravel;
Доработка и техподдержка проектов на любых фреймворках;
Наполнение сайтов с погружением в тему;
Разработка "под ключ" мобильных приложений;
Продвижение и контекстная реклама с прозрачными отчётами за месяц.
Здравствуйте.
По факту нужен файл system/library/mail/smtp.php
Но я посмотрел его на гитхабе, и могу сказать, что надо заменить 3 строчки в нем, а именно кодирование base64 на quoted-printable. То есть
$header .= 'Subject: =?UTF-8?B?' . base64_encode($this->option['subject']) . '?=' . PHP_EOL;
меняем на
$header .= 'Subject: =?UTF-8?Q?' . quoted_printable_encode($this->option['subject']) . '?=' . PHP_EOL;
и всё.
аналогично можно поступить со строчками From и Reply-to.
но если письма приходят только с пустой темой, а все остальное нормально, то можно и не трогать.
Если сами не разберетесь, готов заняться.
Доброго времени суток. Я mail.php поправил поставил метки, где изменил.
Важно:
1. Убедитесь, что на сервере включено расширение `mbstring`.
2. Все входящие данные (темы, имена) должны быть в кодировке UTF-8.
3. Для SMTP-отправки изменения не требуются — тема и имя отправителя уже закодированы корректно.
Тестирование:
После внесения правок проверьте отправку писем:
- С кириллическими темами: `"Тестовый заказ №123"`
- С спецсимволами: `"Ваш счет: 100$"`
- С длинными темами (>75 символов).
Темы должны отображаться корректно в почтовых клиентах.
Что нужно сделать
Изменение кодировки заголовков: Вам нужно убедиться, что заголовки формируются в соответствующей кодировке. Для этого можно использовать стандартные наборы символов (например, ASCII) и экранирование символов.
Правки в mail.php: Если вы предполагаете, что нужно изменить файл system/library/mail.php, я бы рекомендовал внести следующие изменения:
Убедиться, что заголовок Subject кодируется корректно согласно стандарту RFC 5322.
Проверить, что нет непечатных символов в заголовках.
Пример
Вот модификация кода, которая может помочь:
php
public function setSubject($subject) {
// Убираем возможные непечатные символы и скрытые символы
$subject = $this->cleanSubject($subject);
Opencart 1.5 - исправить кодировку писем
Реклама
Opencart 1.5 - исправить кодировку писем
Письма с нашего сайта (о заказе, о поступлении товара и др.) отправляются через SMTP Яндекса. Сегодня все письма стали приходить без темы, т.е. тема письма внезапно стала пустая! Обратились в техподдержку Яндекса с этим и вот их ответ:
Добрый день Павел! Мы обновили правила по обработке заголовков писем. Теперь использовать кодировки UTF-8 нельзя. Рекомендуем формировать заголовки и тело писем в соответствии с RFC-стандартами ( https://datatracker.ietf.org/doc/html/rfc5322#section-2.2), корректно обрабатывая и экранируя непечатные символы.
Нужна помощь поправить это на сайте. Полагаю, что поправить нужно будет файл system/library/mail.php, который прилагаю. Могу дать доступ к сайту. Обращаю внимание еще раз, отправка не через PHPMAIL а через SMTP.
Цену пишите вы, я не знаю насколько сложная проблема!
Другие открытые задания:
Расшифровка аудио (набор текста с аудио, видео) - стенограммы (требуется) 1 200 р.
Бюджет: 1 200 р. Коллеги. Все заявки рассматриваются централизовано - по эл. почте (ссылка ниже), а передача заданий и координация проекта ведется в текстовом чате в скайпе. Чтобы п…
Локализация приложения на Go|React(Бекенд\Фронтед)70 000 р.
Бюджет: 70 000 р. Локализовать приложение (мессенджер), заменить анг. яз. на русский можем предоставить свой докер и вы его локализуете ну и замените лого Поставить логотип (лого …
Размещение объявлений на авито5 000 р.
Бюджет: 5 000 р. От вас просто размещение на вашем аккаунте. Занимаюсь перепродажей электроники и других вещей. Провисеть должны до продажи. Можно несколько объявлений и несколько а…
поиск заданий