Magento 2 Documentation  2.3
Documentation for Magento 2 CMS v2.3 (December 2018)
Public Member Functions
Mail Class Reference
Inheritance diagram for Mail:
MailInterface

Public Member Functions

 __construct (ConfigInterface $contactsConfig, TransportBuilder $transportBuilder, StateInterface $inlineTranslation, StoreManagerInterface $storeManager=null)
 
 send ($replyTo, array $variables)
 

Detailed Description

Definition at line 14 of file Mail.php.

Constructor & Destructor Documentation

◆ __construct()

__construct ( ConfigInterface  $contactsConfig,
TransportBuilder  $transportBuilder,
StateInterface  $inlineTranslation,
StoreManagerInterface  $storeManager = null 
)

Initialize dependencies.

Parameters
ConfigInterface$contactsConfig
TransportBuilder$transportBuilder
StateInterface$inlineTranslation
StoreManagerInterface | null$storeManager

Definition at line 44 of file Mail.php.

49  {
50  $this->contactsConfig = $contactsConfig;
51  $this->transportBuilder = $transportBuilder;
52  $this->inlineTranslation = $inlineTranslation;
53  $this->storeManager = $storeManager ?: ObjectManager::getInstance()->get(StoreManagerInterface::class);
54  }

Member Function Documentation

◆ send()

send (   $replyTo,
array  $variables 
)

Send email from contact form

Parameters
string$replyTo
array$variables
Returns
void
See also
\Magento\Contact\Controller\Index\Post::validatedParams()

Implements MailInterface.

Definition at line 63 of file Mail.php.

64  {
66  $replyToName = !empty($variables['data']['name']) ? $variables['data']['name'] : null;
67 
68  $this->inlineTranslation->suspend();
69  try {
70  $transport = $this->transportBuilder
71  ->setTemplateIdentifier($this->contactsConfig->emailTemplate())
72  ->setTemplateOptions(
73  [
74  'area' => Area::AREA_FRONTEND,
75  'store' => $this->storeManager->getStore()->getId()
76  ]
77  )
78  ->setTemplateVars($variables)
79  ->setFrom($this->contactsConfig->emailSender())
80  ->addTo($this->contactsConfig->emailRecipient())
81  ->setReplyTo($replyTo, $replyToName)
82  ->getTransport();
83 
84  $transport->sendMessage();
85  } finally {
86  $this->inlineTranslation->resume();
87  }
88  }

The documentation for this class was generated from the following file: