Como crear plantillas para correos
Como crear plantillas para correos
Aprende cómo crear una plantilla que podrás utilizar para enviar correos de manera que puedas separar la vista del código con la lógica del envío del correo.
Pre requisitos.
Para poder implementar esta funcionalidad debes tener el módulo de correos funcionando, si no lo tienes funcionando y es la primera vez que lo vas a utilizar te recomiendo leer éste artículo:
Si ya tienes tus correos funcionando puedes seguir con éste manual.
Agregar plantilla de correo
La ruta predeterminada para las plantillas es "/mail/layouts/", por lo que si no tienes ésta carpeta creada simplemente puedes crearla en la raíz del sitio, pero normalmente esa viene instalada de manera predeterminada.
De manera predeterminada viene un archivo de muestra llamado "html.php" el cual puedes utilizarlo como plantilla. Si usas éste código debe enviarse un correo utilizando la plantilla.
Ejemplo para enviar un correo utilizando una plantilla.
$content = "Aquí debes poner el contenido de tu correo";
Yii::$app->mailer->compose('layouts/main_template', ['content' => $content])
->setFrom('soporte@dominioejemplo.com')
->setTo('benjamin.castillo@gmail.com)
->setSubject('Prueba desde mi PC')
->send();
Yii::$app->mailer->compose('layouts/main_template', ['content' => $content])
->setFrom('soporte@dominioejemplo.com')
->setTo('benjamin.castillo@gmail.com)
->setSubject('Prueba desde mi PC')
->send();
Nota importante: Si envías un correo con plantilla debes quita la opción "setHtmlBody" por que si la pones, en automático se des habilita la plantilla, es decir que ignorará la plantilla, en su lugar debes de meter todo el contenido dentro del parámetro "$content" como lo muestra el ejemplo anterior.
->setHtmlBody('<h1>Este es mi primer correo enviado con Yii2')
Fuente:
Comentarios
Publicar un comentario