Я использую Swift Mailer 406 для отправки писем. Я подключаюсь к моей учетной записи smtp.gmail.com, а затем:
->setFrom(array($from => $fromname))
Но отправленные письма получили оригинальное почтовое письмо с учетной записью Gmail.
Могу я его изменить?
gmail не позволяет использовать случайные адреса. Вы должны добавить и подтвердить адрес, который хотите использовать в настройках gmail:
Settings -> Accounts -> Send mail as -> Add another email address you own
$email=$entity->getEmail(); ->setFrom(array('your fix adress@gmail.com' => $email))
В вашем Parameters.yml вы должны сделать эту конфигурацию:
parameters: database_host: 127.0.0.1 database_port: null database_name: your db name database_user: root database_password: null mailer_transport: smtp mailer_host: smtp.gmail.com mailer_user: your fix adress@gmail.com mailer_password: your password of your fix adress mailer_port: 465 mailer_encryption: ssl auth_mode: login secret: 3556f3fb752a82ce0ee9c419ef793b7a707f324a
И в вашем контроллере контактов вы должны добавить это, чтобы исправить setfrom()
swiftmailer:
if ($form->isValid()) { $em = $this->getDoctrine()->getManager(); $subject = $entity->getSubject(); $name=$entity->getName(); $email=$entity->getEmail(); $body=$entity->getBody(); $message = \Swift_Message::newInstance('here') ->setSubject("Shoppify email from ".$name." Subject ".$subject) ->setFrom(array('your fix adress@gmail.com' => $email)) ->setTo('your adress destionation@example.com') ->setBody($body); $this->get('mailer')->send($message); $em->persist($entity); $em->flush(); return $this->redirect($this->generateUrl('email_sended')); }