Настройте и переписайте свойство $ viewPath в почтовом файле в модуле.
пример:
public $viewPath = '@myvendor/mymodule/mail';
Сначала создайте новые HTML и текстовые файлы. Создайте оба файла.
Создать оба файла .
- mail / newHTML
почта / trxt / NewTEXT
$mailer = Yii::$app->mailer;
$mailer->viewPath = $this->viewPath;
$mailer->getView()->theme = Yii::$app->view->theme;
return $mailer->compose(['html' => $view, 'text' => 'text/' . $view], $params)
->setTo($to)
->setFrom($this->sender)
->setSubject($subject)
->send();
Если вы хотите изменить путь только для одного:
Использовать перед кодом:
Yii :: $ app-> mailer-> viewPath = '@ myvendor / newPath';
Yii::$app->mailer->compose([ #code...
Если файл VIEW: нужно только изменить имя файла HTML и TEXT, (оба)
Обновление:
Может быть переопределено или через компонент и ...
//new file: path\widgets\Mailer.php
namespace path\widgets;
use yourpath\Mailer as DefaultMailer; //path:mymodule/mail
class Mailer extends DefaultMailer{
public $viewPath = '@myvendor/mymodule/mail';
public function changeviewPath($_path){
$this->viewPath; = $_path;
}
}
// для использования. Изменения
use path\widgets\Maile; // New path
// Use before the usual code
$mailer->changeviewPath('newpath\mail');
Для изменения адреса файлов в компоненте. В зависимости от вашего модуля электронной почты, он варьируется
пример:
'modules' => [
'myMudul' => [
'class' => 'PathModule\Module',
'mailer' => [
#code ..
],
],
...