EOB*_*EOB 4 php magento email-templates magento-1.4
我正在加载我的邮件模板,如下所示:
$mailTemplate = Mage::getModel('core/email_template');
$myTemplate = $mailTemplate->load($templateId);
Run Code Online (Sandbox Code Playgroud)
现在我可以使用以下方式获取模板内容:
$text = $myTemplate ->getData('template_text');
Run Code Online (Sandbox Code Playgroud)
这样可行,但$ text仍然包含变量的占位符,例如{{var myvar}}或{{store url =""}}.有没有办法在加载模板时填充这些占位符而不发送邮件?我想向用户显示文本,但填充占位符.
可能?
谢谢 :)
是的,这是可能的.
这个班Mage_Core_Model_Email_Template有一个方法getProcessedTemplate().您只需要为占位符传递适当的变量.
例如,如果您的模板包含这样的占位符:
{{var firstname}} {{var lastname}}
Run Code Online (Sandbox Code Playgroud)
您可以使用:
$sTemplate = Mage::getModel('core/email_template')
->load($templateId)
->getProcessedTemplate(array(
'firstname' => 'John',
'lastname' => 'Doe'
));
Run Code Online (Sandbox Code Playgroud)
让你的占位符得到解决.