I am working on custom email template layout. In this template.html file I use custom layout handle with custom object variables as shown as below.
{{layout handle="custom_layout_handle" quote=$quote }}
"custom_layout_handle" contains custom phtml file where I try to get quote object but it gives me type of null.
In my send mail class file. I pass variables using DataObject() class too., but it still not working.
Here, I share my code
$storeScope = \Magento\Store\Model\ScopeInterface::SCOPE_STORE;
$vars = [ 'quote' => $quote ];
$transportObject = new DataObject($vars);
$om = \Magento\Framework\App\ObjectManager::getInstance();
$transportBuilder = $om->get('\Magento\Framework\Mail\Template\TransportBuilder');
$state = $om->get('\Magento\Framework\Translate\Inline\StateInterface');
$storeScope = \Magento\Store\Model\ScopeInterface::SCOPE_STORE;
$builder = $transportBuilder
->setFrom(['email'=>"first.last@test.com", 'name'=>"Main"])
->setTemplateOptions(([
'area' => Area::AREA_FRONTEND,
'store' => $ruleQuote->getStoreId()
]))
->setTemplateVars($transportObject->getData());
$builder->addTo("test-email@test.com");
$transport = $builder->setTemplateIdentifier($schedule->getTemplateId(), $storeScope)->getTransport();
$transport->sendMessage();
$state->resume();
Thanks.