...
✅ Noticias, temas, complementos de WEB y WordPress. Aquí compartimos consejos y las mejores soluciones para sitios web.

Envío de correo electrónico a través del servidor SMTP de Gmail en Laravel

805

¿Quieres usar el servidor SMTP de Gmail para enviar correos electrónicos en Laravel? A veces, su servidor no envía correos electrónicos debido a sus limitaciones o configuraciones incorrectas. En tales escenarios, puede utilizar el servidor SMTP para enviar correos electrónicos. En este artículo, discutimos cómo enviar correo electrónico usando el servidor SMTP de Gmail en Laravel.

Al usar el servidor SMTP, sus correos electrónicos no terminarán en la carpeta de correo no deseado. En general, se tratará como un correo electrónico genuino y entrará en la bandeja de entrada del usuario.

Un beneficio más de usar el servidor SMTP es que también puede enviar correos electrónicos desde su servidor local. Será útil probar la funcionalidad del correo electrónico en el servidor local.

Configuración del servidor SMTP de Gmail en Laravel

Laravel usa un config/mail.phparchivo para almacenar los detalles relacionados con los proveedores de correo electrónico. Este archivo contiene configuraciones como MAIL_HOST, MAIL_PORT, MAIL_ENCRYPTION, etc. El usuario debe proporcionar esta información que será utilizada por Laravel y enviar sus correos electrónicos.

Para agregar esta información, no es necesario editar config / mail.php. En su lugar, debe almacenar estos detalles en el .envarchivo.

Abra su .envarchivo que se encuentra en su directorio raíz y encontrará a continuación el código relacionado con la configuración del correo electrónico.

MAIL_MAILER=smtp
MAIL_HOST=mailtrap.io
MAIL_PORT=2525
MAIL_USERNAME=null
MAIL_PASSWORD=null
MAIL_ENCRYPTION=null

Edite los detalles anteriores de la siguiente manera.

MAIL_MAILER=smtp
MAIL_HOST=smtp.googlemail.com
MAIL_PORT=465
MAIL_USERNAME=GMAIL_USERNAME
MAIL_PASSWORD=GMAIL_PASSWORD
MAIL_ENCRYPTION=ssl

Aquí, configuro el controlador como smtp, el host para Gmail como smtp.googlemail.com, el puerto SMTP para Gmail como 465 y el método de cifrado como ssl. Asegúrese de reemplazar los marcadores de posición GMAIL_USERNAME, GMAIL_PASSWORD con su nombre de usuario y contraseña reales de Gmail.

Para utilizar el servidor SMTP de Gmail, debe cambiar algunas configuraciones en su cuenta de Google. Inicie sesión en su cuenta de Google y haga clic en ‘Cuenta’. Una vez que esté en la página ‘Cuenta’, haga clic en ‘Seguridad’. Desplácese hacia abajo y encontrará la configuración de ‘Acceso a aplicaciones menos seguras’. Ponlo en ON.

Envío de correo electrónico a través del servidor SMTP de Gmail en Laravel

Código para enviar correo electrónico en Laravel

En esta etapa, habrá completado toda la configuración básica. Ahora, debe escribir un código de Laravel que enviará un correo electrónico.

Para este tutorial, usaré una clase de ‘Correo’ para escribir código. El usuario también puede escribir el código usando Laravel Mailable. No hará ninguna diferencia. En ambos casos, Laravel usa el servidor SMTP de Gmail en segundo plano.

Cuando use la clase ‘Correo’, su código será similar a lo que se escribe a continuación.

$to_name = 'TO_NAME';
$to_email = 'TO_EMAIL_ADDRESS';
$data = array('name'=>"Sam Jose", "body" => "Test mail");
     
Mail::send('emails.mail', $data, function($message) use ($to_name, $to_email) {
    $message->to($to_email, $to_name)
            ->subject('Artisans Web Testing Mail');
    $message->from('FROM_EMAIL_ADDRESS','Artisans Web');
});

En el código anterior, estoy usando la vista ’emails.mail’. Significa que debe crear una carpeta y un archivo como resources->views->emails->mail.blade.php.

Tu mail.blade.phpcontendrá el siguiente código.

Hi <strong>{{ $name }}</strong>,
  
<p>{{ $body }}</p>

¡Eso es! Ahora, en segundo plano, Laravel usará automáticamente el servidor SMTP de Gmail y enviará sus correos electrónicos.

Artículos relacionados

Fuente de grabación: artisansweb.net

This website uses cookies to improve your experience. We'll assume you're ok with this, but you can opt-out if you wish. Accept Read More