I am creating custom module to process order template. In Magento 1,It is working fine with below code,
$template = 'sales_email_order_template';
$emailTemplate = Mage::getModel('core/email_template')
->loadDefault($template);
When i use loaddefault method in the Magento 2, it shows me an error
like, Warning: Illegal offset type in isset or empty in
/var/www/html/xyz/vendor/magento/module-email/Model/Template/Config.php
on line 224 []
Please check my code below,
class Orderdetail extends MagentoFrameworkViewElementTemplate{
protected $order;
protected $templateFactory;
protected $_storeManager;
protected $_paymentHelper;
public function __construct(
MagentoBackendBlockTemplateContext $context,
MagentoSalesApiDataOrderInterface $order,
MagentoEmailModelTemplateFactory $templateFactory,
MagentoStoreModelStoreManagerInterface $storeManager,
MagentoPaymentHelperData $paymentHelper,
array $data = []
)
{
$this->order = $order;
$this->templateFactory = $templateFactory;
$this->_storeManager = $storeManager;
$this->_paymentHelper = $paymentHelper;
parent::__construct($context, $data);
}
public function getOrderDataHtml(){
echo $orderid = $this->getRequest()->getParam('orderid');
$order = $this->order->load($orderid);
if ($order->getCustomerIsGuest()) {
$template = 'sales_email_order_guest_template';
} else {
$template = 'sales_email_order_template';
}
$template = $this->templateFactory->create();
$emailTemplate = $template->loadDefault($template);
$emailTemplateVars = array();
$emailTemplateVars['store'] = $this->_storeManager->getStore();
// order you want to load by ID
$emailTemplateVars['order'] = $order;
// Template Variables
$order = $emailTemplateVars['order'];
$paymentBlock = $this->_paymentHelper->getInfoBlock($order->getPayment())
->setIsSecureMode(true);
$paymentBlock->getMethod()->setStore($this->_storeManager->getStore());
$emailTemplateVars['payment_html'] = $paymentBlock->toHtml();
//displays the rendered email template
return $emailTemplate->getProcessedTemplate($emailTemplateVars);
}
Please help me. Your help would be appreciated!!!
Thanks