我需要修改在创建新帐户后发送给用户的欢迎电子邮件。我需要在我的自定义模块中执行此操作。我尝试使用首选项方法以及插件方法在Magento \ Customer \ Model \ Customer中覆盖函数sendNewAccountEmail。两者都不起作用。
对于首选项方法,我添加了以下内容
在Vendor / Module / etc / di.xml
中<preference for="Magento\Customer\Model\Customer" type = "Vendor\Module\Model\Customer" />
在Vendor \ Module \ Model \ Customer位置添加了Customer.php文件,并添加了以下代码
public function sendNewAccountEmail($type = 'registered', $backUrl = '', $storeId = '0')
{
echo "It's Working";exit;
$types = $this->getTemplateTypes();
if (!isset($types[$type])) {
throw new \Magento\Framework\Exception\LocalizedException(
__('Please correct the transactional account email type.')
);
}
if (!$storeId) {
$storeId = $this->_getWebsiteStoreId($this->getSendemailStoreId());
}
$this->_sendEmailTemplate(
$types[$type],
'customname/email/account_email_template',
['customer' => $this, 'back_url' => $backUrl, 'store' => $this->getStore()],
$storeId
);
return $this;
}
仍然没有在模块中使用Customer.php文件。
回声“正在运行”;没有显示。
请提供正确的方法。我也尝试了插件方法。它也不起作用。