Unfortunately, so far I am a complete beginner in creating a module in magento.
I need to send an email after adding the item to the cart.
As I understand it, I need to use the checkout_cart_product_add_after event
I created some files, but I don’t understand how to send an email after adding the item to the cart
My/Module/etc/events.xml
<config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="urn:magento:framework:Event/etc/events.xsd">
<event name="checkout_cart_product_add_after">
<observer name="email_after_adding_product" instance="MyModuleObserverSendEmailForCart"/>
</event>
My/Module/Observer/SendEmailForCart.php
<?php
namespace MyModuleObserver;
use MagentoFrameworkEventObserverInterface;
use MyModuleHelperEmail;
class SendEmailForCart implements ObserverInterface
{
private $helperEmail;
public function __construct(
Email $helperEmail
) {
$this->helperEmail = $helperEmail;
}
public function execute(MagentoFrameworkEventObserver $observer)
{
return $this->helperEmail->sendEmail();
}
}
My/Module/Helper/Email.php
<?php
namespace MyModuleHelper;
class Email extends MagentoFrameworkAppHelperAbstractHelper
{
public function __construct(
)
{
}
public function sendEmail()
{
try {
} catch (Exception $e) {
}
}
}
Please tell, what code I need to write in the Email.php file?
And do I need to create any additional files or modify the ones I showed above?
2
Answers
Make a reasearch on your own in vendor/magento. There are many places where emails are sent. Look for $transport or $transportObject variable (don’t remember)