Автор Тема: Subject писем обрезается  (Прочитано 335 раз)

13 Октябрь 2017, 10:03:36
  • Фрилансер
  • *
  • Сообщений: 106
  • Репутация: +2/-0
  • Сообщество PrestaShop
    • Просмотр профиля
Добрый день

Не могу решить проблему с заголовком писем. Заголовок обрезается, причем на разную длину (так, админ получает письмо с заголовком "Быстрый заказ", клиент получает письмо с заголовком "Быстрый зака". Исходный заголовок "Быстрый заказ на {shop_name}").

Та же история и с письмами, которые генерятся при изменении статуса заказа, отправкой писем покупателю...короче со всеми, которые проходят через функцию Mail()

Проверил файлы classes/Mail
override/Mail
Swift/MailSend

все там ок.

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





13 Октябрь 2017, 10:22:56
Ответ #1
  • Ветеран
  • *****
  • Сообщений: 3419
  • Репутация: +79/-6
  • Сообщество PrestaShop
    • Просмотр профиля
Шаблоны писем проверь там может обрезаться.
13 Октябрь 2017, 10:25:15
Ответ #2
  • Фрилансер
  • *
  • Сообщений: 106
  • Репутация: +2/-0
  • Сообщество PrestaShop
    • Просмотр профиля
Точно мимо, там ничего не менял

пример:
       if (Configuration::get('SM_ORDER_IN_ONE_CLICK_SEND_EMAIL') && $email) {
            Mail::Send(
                $context->language->id,
                'mail_to_customer',
                Mail::l('Быстрый заказ на IMAGINE', $context->language->id),
                array('{name}' => $name,
                    '{products}' => $products_mail,
                    '{date}' => $oc_cart->date,
                    '{order_summ}' => $products_total,
                    '{discounts_message}' => $discounts_message,
                    '{order_total}' => $oc_cart->order_price,
                    ),
                $email,
                null,
                null,
                null,
                null,
                null,
                dirname(__FILE__).'/mails/',
                false,
                $context->shop->id
            );
13 Октябрь 2017, 10:46:38
Ответ #3
  • Ветеран
  • *****
  • Сообщений: 3419
  • Репутация: +79/-6
  • Сообщество PrestaShop
    • Просмотр профиля
Перевод в админке
Mail::l('Быстрый заказ на IMAGINE', $context->language->id),
13 Октябрь 2017, 11:48:02
Ответ #4
  • Фрилансер
  • *
  • Сообщений: 106
  • Репутация: +2/-0
  • Сообщество PrestaShop
    • Просмотр профиля
А может быть, что неправильно определяется язык по умолчанию, и поэтому идет неправильное кодирование заголовка?

 Решил пока так: в swift/Mailsend , функция SendPerformed

поменял     $subject_enc = $message->headers->has("Subject") ? $message->headers->getEncode("Subject") : "";
на
    $subject_enc = $message->headers->has("Subject") ? $message->headers->get("Subject") : "";
Не понимаю, почему возникла эта байда с кодировками, похоже у провайдера по дефолту стоит win