Отправка почты с параметром -f

Всем привет! Мы столкнулись с проблемой, что письма отправленные с сайта не через SMTP попадают в спам, хостер ответил, что необходимо использовать параметр -f в функции mail(), в качестве теста был создан тестовый файл с требуемыми модификациями

$result = mail($to, $subject, $message, $headers, ‘-fadmin@*****.ru’);

в таком виде сообщения уходят как нужно, подскажите как активировать данный функционал или в каком месте кода внести соответствующие правки
заранее спасибо

попробуйте через хук mailer_send_pre сделать

function fn_my_changes_mailer_send_pre($this, $transport,&$message, $area, $lang_code)
{
$from = $message->getFrom();

        if ($from) {
            $name = reset($from);
            $address = key($from);

            $message->setFrom('-f'.$address, $name);
        }
}
2 лайка

Подскажите, как правильно сделать через хук?
Пытаюсь добавить этот функционал в уже имеющийся рабочий плагин:

  1. новую строчку в init.php
    image

  2. в func.php также добавляю фукнцию, хотя бы пустую, сайт падает “Service Unavailable”
    function fn_dbs_mailer_send_pre($this, $transport,&$message, $area, $lang_code)
    {
    }
    image

попробуйте изменить название переменной в хуке

если не поможет включите отображение ошибок
https://www.cs-cart.ru/docs/4.2.x/developer/instruments/debug/

Хук заработал, но результат не тот
image

в итоге все получилось без хука, но пришлось редактировать корневой класс PHPMailer