This website uses cookies

Our website, platform and/or any sub domains use cookies to understand how you use our services, and to improve both your experience and our marketing relevance.

Laravel Email: Um guia completo para configuração e automação

Updated on October 3, 2025

16 Min Read

Quer se trate de enviar actualizações comerciais importantes, partilhar boletins informativos ou estabelecer uma ligação com amigos e familiares, a capacidade de enviar e-mails de forma contínua e eficiente é crucial. Laravel, uma estrutura PHP popular, oferece uma solução robusta para a gestão de correio eletrónico através da integração de vários fornecedores de serviços de envio de correio eletrónico.

Os fornecedores de serviços de envio de correio eletrónico actuam como um intermediário útil entre a tua aplicação Laravel e os servidores de correio eletrónico. Com este serviço ao teu lado, podes concentrar-te na construção da funcionalidade principal da tua aplicação, deixando a parte da entrega de correio eletrónico em boas mãos.

Além disso, fornecem aos programadores uma forma fiável e conveniente de incorporar a funcionalidade de correio eletrónico nas suas aplicações. Os sítios Web com PHP utilizam o método Mail() php para enviar mensagens de correio eletrónico. No entanto, neste caso, a segurança é frequentemente comprometida, uma vez que não é a forma mais segura de enviar/receber mensagens de correio eletrónico no sítio Web.

Para enviar e-mails em Laravel, a estrutura fornece vários recursos avançados com os quais podes trabalhar. Tem diferentes pacotes disponíveis no mercado que tornam a integração da funcionalidade de envio de correio eletrónico sem esforço. Não só isso, mas estes fornecedores de serviços de e-mail trazem uma série de benefícios adicionais, que vamos descobrir neste blogue.

Por que usar Laravel para enviar e-mails?

O Laravel oferece várias ferramentas para configurar o correio eletrónico nos sítios Web. Algumas dessas opções incluem:

  • Drivers para SMTP, Mailgun, SparkPost, Amazon SES e Sendmail.
  • Uma API limpa e expressiva para enviar e-mails.
  • A eliminação das complexidades dos protocolos e configurações de correio eletrónico permite-te concentrar-te no conteúdo e na estrutura do teu correio eletrónico.
  • Suporta vários drivers de correio imediatamente, incluindo SMTP, Sendmail, Amazon SES e muito mais.
  • Integração perfeita com o sistema de filas de espera incorporado no Laravel para te ajudar a colocar os e-mails em fila de espera para processamento em segundo plano.
  • As classes Mailable do Laravel fornecem uma forma estruturada de definir a lógica específica do correio eletrónico, tornando o teu código mais organizado e fácil de manter.
  • Utilitários de teste para simplificar o processo de escrita de testes para a funcionalidade de correio eletrónico.
  • Um sistema de e-mail que se integra perfeitamente com o sistema de eventos do Laravel.
  • Localização Métodos para definir os idiomas desejados para utilizadores específicos.

Pára de perder tempo com os servidores

A Cloudways lida com o gerenciamento de servidores para que você possa se concentrar apenas na criação de ótimos aplicativos e em manter seus clientes satisfeitos.

Configuração dos pré-requisitos

Para enviar um e-mail em Laravel, tens de definir alguns pré-requisitos.

  • Instala o Laravel usando o comando composer.
compõe globalmente o require laravel/installer
  • O Laravel usa um arquivo de configuração chamado mail.php para definir os drivers de e-mail e outras configurações relacionadas. Abra o arquivo config/mail.php em seu projeto Laravel.
  • Define a opção do controlador para o controlador de correio eletrónico que pretende utilizar (por exemplo, SMTP, Mailgun, Sendmail, etc.).
  • Configura as definições específicas do controlador de acordo com o controlador escolhido. Por exemplo, se estiveres a utilizar o controlador SMTP, indica o anfitrião SMTP, a porta, o nome de utilizador, a palavra-passe, etc.
  • Actualiza a matriz from para especificar o endereço“from” predefinido para os teus e-mails.
  • Cria ou actualiza o teu ficheiro .env na raiz do teu projeto Laravel. Define as variáveis de ambiente necessárias para o driver de correio escolhido.
  • Cria ou modifica visualizações de correio eletrónico de acordo com as tuas necessidades em resources/views/diretory.
  • Gera uma nova classe Mailable utilizando o comando Artisan:
php artisan make:mail MeuEmail

E pronto! Configuraste os pré-requisitos para enviar um e-mail no Laravel. Agora podes enviar e-mails usando o driver de e-mail configurado, variáveis de ambiente e visualizações de e-mail.

O que é Mailable em Laravel?

No Laravel, um Mailable é uma classe dedicada que representa uma mensagem de correio eletrónico. Encapsula a lógica e a configuração necessárias para enviar um e-mail. As classes Mailable facilitam a criação, a personalização e o envio de e-mails de forma estruturada e sustentável.

Ao criar uma classe Mailable, podes definir vários aspectos de um e-mail, como o destinatário, o assunto e o conteúdo do e-mail. Os Mailables também fornecem uma maneira de aproveitar o poder do mecanismo de modelo Blade do Laravel para criar visualizações dinâmicas de e-mail. Aqui está uma visão geral de como os Mailables funcionam no Laravel:

  • Criando uma classe Mailable: Podes gerar uma nova classe Mailable usando a ferramenta de linha de comando Artisan fornecida pelo Laravel. Por exemplo, executa o seguinte comando para criar uma nova classe Mailable chamada WelcomeEmail:
php artisan make:mail WelcomeEmai
  • Este comando irá gerar uma nova classe WelcomeEmail no diretório app/Mail.
  • Personaliza o Mailable: Abre a classe WelcomeEmail gerada e actualiza o método de construção. Este método é responsável pela criação da mensagem de e-mail. Podes definir o destinatário, o assunto e quaisquer dados adicionais que queiras passar para a vista de e-mail.
  • Criando uma visualização de e-mail: O Laravel espera que as visualizações de e-mail estejam localizadas no diretório resources/views. Por padrão, as exibições de e-mail são armazenadas no diretório resources/views/mails. Cria um arquivo de modelo Blade (por exemplo, welcome.blade.php) para definir a estrutura e o conteúdo HTML do e-mail. Podes aceder aos dados passados da classe Mailable na vista de correio eletrónico.
  • Envia o e-mail: Para enviar o email, podes utilizar a fachada Mail ou chamar o método send na instância Mailable. Por exemplo, podes enviar o WelcomeEmail utilizando o seguinte código:
utiliza App\Mail\WelcomeEmail;
utiliza o Illuminate\Support\Facades\Mail;

Mail::to('[email protected]')->send(new WelcomeEmail());
  • Este código envia uma instância do Mailable WelcomeEmail para o destinatário especificado.

As classes Mailable em Laravel fornecem uma maneira estruturada e reutilizável de lidar com mensagens de e-mail, facilitando a manutenção e o gerenciamento da sua funcionalidade de e-mail. Permitem-te separar a lógica de correio eletrónico da lógica da tua aplicação, resultando num código mais limpo e mais fácil de manter.

Como instalar o Laravel (passos simples)

Para enviar um e-mail em Laravel através de fornecedores de serviços de envio de e-mail, precisas obviamente de uma aplicação Laravel instalada no teu servidor. Se já o tens, passa a esta parte; se não, segue os passos abaixo:

Aloja as tuas aplicações Laravel na Cloudways para velocidades mais rápidas

Começa a construir as tuas aplicações no alojamento Laravel com backups automáticos de hora a hora, URLs de teste, gestão SSL e suporte ativo, etc.

Para garantir que não te distrais com problemas ao nível do servidor, instala o Laravel num servidor que utilize a plataforma gerida pela Cloudways, uma vez que esta trata dos problemas ao nível do servidor e oferece uma excelente pilha de caches e tecnologia de bases de dados. Podes experimentar a Cloudways gratuitamente, inscrevendo-te para uma conta.

  • Visita a Plataforma Cloudways.
  • Inicia sessão com as tuas credenciais ou inscreve-te numa nova conta.
  • Clica em Adicionar aplicação para adicionar a tua aplicação Laravel.

Instalação do Laravel

  • Seleciona um servidor existente ou adiciona um novo servidor.

Instalação do Laravel

  • Escolhe Laravel como a tua aplicação no menu pendente e dá-lhe um nome.
  • Clica em Adicionar aplicação.

Instalação do Laravel

  • Aguarda que a tua aplicação seja adicionada. Quando estiver pronta, podes começar a geri-la.

Instalação do Laravel

Agora que tens uma aplicação Laravel a funcionar nos servidores rápidos da Cloudways, vamos aprender como podes configurar os emails nela.

Como configurar o SMTP do Gmail para Laravel

Configurar o correio eletrónico em Laravel com o SMTP do Gmail é bastante fácil. Começa por configurar as definições básicas. Para realizar este passo, cola o seguinte código no ficheiro .env de acordo com as tuas definições:

MAIL_DRIVER=smtp
MAIL_HOST=smtp.googlemail.com
MAIL_PORT=465
MAIL_USERNAME=ENTRA_O_SEU_ENDEREÇO_DE_EMAIL(GMAIL)
MAIL_PASSWORD=ENTER_YOUR_GMAIL_PASSWORD
MAIL_ENCRYPTION=ssl

Nas definições acima mencionadas, podes configurar o MAIL_DRIVER como SMTP, o MAIL_HOST para o Gmail como smtp.googlemail.com, o MAIL_ PORT para o Gmail como 465 e o método MAIL_ENCRYPTION como SSL.

Uma vez que estamos a utilizar o SMTP do Gmail com o Laravel, temos de alterar algumas definições de segurança na nossa conta Google para dar acesso a aplicações menos seguras.

Configura a conta do Gmail

  • Depois de configurares com êxito as definições da tua aplicação Laravel, acede à tua conta Gmail.

criar conta gmail

  • Inicia sessão na tua conta Gmail e clica nas definições da conta Google.
  • Verifica as tuas definições de segurança para confirmar se o acesso menos seguro à aplicação está ativo. Temos de garantir que está ativo, uma vez que temos de utilizar o SMTP.

definição de segurança do gmail

Em seguida, segue os passos abaixo:

No Controlador

  • Cria um controlador com o nome que quiseres e cola nele o seguinte código:
função pública mail()
{
$to_name = 'RECEIVER_NAME';
$to_email = 'RECEIVER_EMAIL_ADDRESS';
$data = array('name'=>"Cloudways (sender_name)", "body" => "A test mail");
  
Mail::send('mail', $data, function($message) use ($to_name, $to_email) {
$message->to($to_email, $to_name)
->subject(Laravel Test Mail');
$message->from('SENDER_EMAIL_ADDRESS','Test Mail');
});
   
  retorna 'Email enviado com sucesso';
}

Ver ficheiro

Olá <b>{{{ $name }}</b>,
<p>{{body}}</p>

Laravel Mail

Existem muitos guias e tutoriais disponíveis online relacionados com o Laravel Mail. Também podes encontrar alguns exemplos detalhados no site oficial do Laravel.

Criar um e-mail em Laravel

O Laravel fornece uma API simples para a popular biblioteca SwiftMailer com drivers para
fornecedores de serviços como o Amazon SES
bem como SMTP, Mailgun, Postmark, e Sendmail, permitindo-te enviar emails rapidamente com a tua escolha de estrutura.

Criação de mailable

Em Laravel, cada tipo de correio eletrónico enviado pela tua aplicação é representado por uma classe“mailable“. Primeiro, precisas de criar uma classe mailable com um nome qualquer. Cola o seguinte comando no terminal SSH da Cloudways.

php artisan make:mail CloudHostingProduct

Depois de executares o comando acima mencionado, a tua classe de correio será criada com o nome de CloudHostingProduct. Portanto, cria este ficheiro dentro de App\Mail\CloudHostingProduct.php.

O método From

No método Método do formulário, define o endereço de correio eletrónico que pretendes utilizar.

  */
função pública build()
{
  devolve $this->from('[email protected]')
  ->visualiza('emails.CloudHosting.Product);
}

Endereço de correio global

Se o teu e-mail for o mesmo em todas as nossas aplicações web, podes configurá-lo primeiro no ficheiro config/mail.php do Laravel, utilizando o código abaixo. Se estiveres a usar o mesmo endereço de email em toda a aplicação, então tens de o configurar primeiro no ficheiro config/mail.php. Basta copiar e colar o seguinte código.

'from' => ['address' => '[email protected]', 'name' => 'App Name'],

Configura a vista para o Laravel Mail

No método de construção de uma classe de correio eletrónico, podes utilizar o método de visualização para especificar qual o modelo que deve ser utilizado para o envio de correio eletrónico ao renderizar o conteúdo do correio eletrónico.

função pública build()
{
  retorna $this->view('emails.CloudHosting.Product);
}

Ver dados

Queres passar alguns dados para a função de vista que podes utilizar ao renderizar o HTML do e-mail? Há duas formas de disponibilizar dados para a tua vista.

Em primeiro lugar, qualquer propriedade pública definida na tua classe enviável estará automaticamente disponível para visualização. Por exemplo, podes passar dados para o construtor da tua classe de mailable e definir esses dados para as propriedades públicas definidas na classe:

<?php

namespace App\Mail;

utiliza o Illuminate\Bus\Queueable;
utiliza o Illuminate\Mail\Mailable;
utiliza Illuminate\Queue\SerializesModels;
utiliza Illuminate\Contracts\Queue\ShouldQueue;

class SendMailable extends Mailable
{
  utiliza Queueable, SerializesModels;
  publicas $name;

   
  função pública __construct($name)
  {
  $this->nome = $nome;
  }
  função pública build()
  {
  retorna $this->view('emails.name');
  }
}

Uma vez que os dados tenham sido definidos como propriedade pública, estarão automaticamente disponíveis na tua vista.

Criando o modelo de e-mail do Laravel

<div>
  Nome: {{ $name }}
</div>

Configurar as rotas

Cria uma rota colando o seguinte código no ficheiro web.php.

Route::get('/send/email', 'HomeController@mail');

Ficheiro do controlador

Agora, cria um ficheiro de controlador com qualquer um dos teus nomes preferidos. Para este tutorial, vou colar o seguinte código no HomeController.

função pública mail()
{
  $name = 'Cloudways';
  Mail::to('[email protected]')->send(new SendMailable($name));
   
  retorna 'Email enviado com sucesso';
}

5 Melhores Ferramentas para Enviar Email em Laravel (+Passos de Instalação)

Há uma variedade de pacotes e fontes de e-mail disponíveis para o Laravel. Vamos ver algumas das ferramentas mais usadas no Laravel para enviar e-mails. Esta secção cobre as definições de integração das 5 melhores ferramentas de envio de correio eletrónico; clica nelas para ires diretamente para os respectivos passos de integração:

As aplicações Laravel têm melhor desempenho na Cloudways

Obtém backups automáticos de hora a hora, URLs de teste, gestão de SSL, suporte ativo e mais funcionalidades de desenvolvimento no melhor alojamento Laravel.

Integrar o Mailtrap com o Laravel

O Mailtrap tem um servidor predefinido no Laravel, por isso só tens de introduzir aí as tuas credenciais. Basta instalar o Laravel usando a Managed Laravel Hosting Platform da Cloudways e colar as seguintes configurações no arquivo .env.

MAIL_DRIVER=smtp
MAIL_HOST=smtp.mailtrap.io
MAIL_PORT=2525
MAIL_USERNAME= //o teu nome de utilizador gerado pelo Mailtrap
MAIL_PASSWORD= // a tua palavra-passe gerada pelo Mailtrap
[email protected]
MAIL_FROM_NAME=Exemplo

configuração do mailtrap do laravel

Na maioria dos casos, a configuração do ficheiro .env é suficiente. Em alternativa, podes definir o teu ficheiro config/mail.php com o seguinte conteúdo (também está disponível na lista de integrações no Mailtrap):

<?php
regressa [
  "driver" => "smtp",
  "host" => "smtp.mailtrap.io",
  "porta" => 2525,
  "from" => array(
  "endereço" => "[email protected]",
  "name" => "Exemplo"
  ),
  "username" => "1a2b3c4d5e6f7g" // o teu nome de utilizador,
  "password" => "1a2b3c4d5e6f7g" // a tua palavra-passe,
  "sendmail" => "/usr/sbin/sendmail -bs"
];

Cria uma classe de correio para o Mailtrap

Agora, cria uma classe Mailable, colando o seguinte comando no Terminal SSH.

php artisan make:mail MailtrapExample

mailtrap classe de correio

Em seguida, tens de o encontrar no diretório Mail na app/Mail. Tens um modelo que contém funções básicas, pelo que podes modificar esse modelo com o seguinte código:

<?php
namespace App\Mail;
utiliza o Illuminate\Bus\Queueable;
utiliza o Illuminate\Mail\Mailable;
utiliza Illuminate\Queue\SerializesModels;
utiliza o Illuminate\Contracts\Queue\ShouldQueue;
class MailtrapExample extends Mailable
{
  utiliza Queueable, SerializesModels;
 
/**
  * Cria uma nova instância de mensagem.
  *
  * @return void
  */
  função pública __construct()
  {
 
//
  }
 
/**
  * Constrói a mensagem.
  *
  * @retorna $this
  */
função pública build()
  {
  devolve $this->from('[email protected]', 'Mailtrap')
  ->subject('Confirmação de correio eletrónico')
  ->markdown('mails.exmpl')
  ->com([[
  'name' => 'New Mailtrap User',
  'link' => 'https://mailtrap.io/inboxes'
  ]);
  }

Em seguida, tens de criar uma mensagem no ficheiro blade.php. Neste exemplo, especifiquei a classe mailable no ficheiro mails.exmpl. Agora tens de criar um diretório ‘mails‘ com um ficheiro de modelo blade ‘emailexample.blade.php‘.

Rotas

Para criar uma rota para o correio, basta colares o seguinte código:

<?php

utiliza App\Mail\MailtrapExample;
utiliza o Illuminate\Support\Facades\Mail;

Route::get('/send-mail', function () {

  Mail::to('[email protected]')->send(new MailtrapExample());  

  retorna 'Foi enviada uma mensagem para Mailtrap!';

})

E já está! Conseguiste integrar com sucesso o Mailtrap com o Laravel.

Integrar o SendGrid com o Laravel

Outra ferramenta popular para o e-mail do Laravel é o SendGrid. Vamos conferir as seguintes diretrizes para enviar um e-mail com o SendGrid no Laravel.

SendGrid

Os Mailables são responsáveis por recolher os dados e passá-los para as “vistas”, tal como o Mailtrap. Primeiro, podes verificar o ficheiro .env da tua aplicação para ver se existe uma configuração de envio de correio eletrónico relacionada com o SendGrid.

MAIL_DRIVER=smtp
MAIL_HOST=smtp.sendgrid.net
MAIL_PORT=587
MAIL_USERNAME=nome_de_usuário_da_rede_de_envio
MAIL_PASSWORD=sendgrid_password
MAIL_ENCRYPTION=tls
MAIL_FROM_NAME="Pardeep Kumar"
[email protected]

Cria um correio eletrónico

Tal como no Mailtrap, podes criar uma classe enviável por correio colando o seguinte comando no terminal SSH.

php artisan make:mail TestEmail

Este comando criará um novo ficheiro em app/Mail/TestEmail.php e deverá ter o seguinte aspeto:

função pública build()
  {
  $address = '[email protected]';
  $subject = "Isto é uma demonstração!";
  $nome = 'Jane Doe';
        
  retorna $this->view('emails.test')
  ->from($address, $name)
  ->cc($address, $name)
  ->bcc($address, $name)
  ->replyTo($address, $name)
  ->subject($subject)
  ->with([ 'test_message' => $this->data['message'] ]);
  }

Visualização de e-mail em Laravel

Vamos criar a Laravel View para os modelos de e-mail quando enviares um e-mail. Basta colares o seguinte código no teu ficheiro view localizado em views/emails/test.blade.php.

<!DOCTYPE html>
 

Testar e-mail

 

{Não te preocupes.

 

Integração do Mailgun no Laravel

Antes de mais, tens de te registar no Mailgun e criar uma conta gratuita. Depois de criares a tua conta, podes alterar as definições do teu ficheiro .env, mudando apenas Mail Driver para Mailgun.

Pistola de correio

Depois de iniciares sessão com êxito, verás os códigos em diferentes idiomas. Seleciona o código PHP a partir daí.

laravel mailgun

Ficheiro de configuração do Laravel

Adiciona a configuração do Mailgun à tua aplicação, colando o seguinte código em config/services.php.

'mailgun' => [
  'domínio' => '',
  'segredo' => '',
  ],

Laravel Mailgun Routes

Vamos criar rotas para testar e-mails utilizando o Mailgun. Basta copiar o código fornecido abaixo no ficheiro web.php da tua aplicação.

Route::get('send_test_email', function(){
  Mail::raw('Enviando e-mails com Mailgun e Laravel!', function($message)
  {
  $message->to('[email protected]');
  });
});

Também podes querer incluir uma linha de assunto e, possivelmente, um e-mail do remetente, como se segue:

Route::get('send_test_email', function(){
  Mail::raw('Enviar mensagens de correio eletrónico com o Mailgun e o Laravel ', function($message)
  {
  $message->subject('Mailgun e Laravel ');
  $message->from('no-reply@website_name.com', 'Nome do sítio Web');
  $message->to('[email protected]');
  });
});

Integração do Mandrill no Laravel

Em primeiro lugar, tens de criar uma conta no Mandrill e depois tens de instalar um guzzle para isso. Basta colares o seguinte comando na tua aplicação.

"guzzlehttp/guzzle": "~5.3|~6.0"

Mandril

Depois, tens de configurar o driver da aplicação no teu ficheiro mail.php. De seguida, tens de copiar a chave API em config/services.php.

'mandrill' => [
  'secret' => 'your-mandrill-key',
],

Envio de e-mail do Mandrill

Copia o método mencionado abaixo para enviar uma mensagem de correio eletrónico utilizando o Mandrill.

\Mail::send('welcome', [], function ($message){
  $message->to('recipient_email_address')->subject('Cloudways - Testing mail');
});

Integrar o Mailchimp no Laravel

Para integrar o Mailchimp no Laravel, tens de começar por criar uma conta gratuita no Mailchimp. Depois de fazeres o login, cria uma lista no menu, depois vai a Settings e copia o ID da tua lista, que vais usar na API. Abre o teu ficheiro .env e cola lá a chave da API.

APP_ENV=local
APP_DEBUG=verdadeiro
APP_KEY=

DB_HOST=127.0.0.1
DB_DATABASE=aprende
DB_USERNAME=root
DB_PASSWORD=root


MAILCHIMP_API_KEY=Chave da API aqui

Instalar o pacote Laravel Mailchimp

Depois de configurares com sucesso as definições no ficheiro .env, abre o teu terminal SSH e cola o seguinte comando.

compositor require skovmand/mailchimp-laravel

Ficheiro de configuração do Laravel

Agora, configura o teu ficheiro de configuração, colando o seguinte código no teu ficheiro config.php.

regressa [

  ......

  $provides => [

Skovmand\Mailchimp\MailchimpServiceProvider::class,

  ],

  .....

]

Rotas de Laravel

Agora, configura as rotas da tua aplicação web como se mostra abaixo.

Route::get('manageMailC', 'MailChimpController@manageMailC');
Route::post('subs',['as'=>'sub','uses'=>'MailChimpController@sub']);
Route::post('sendComp',['as'=>'sendComp','uses'=>'MailChimpController@sendComp']);

Controlador Laravel

Agora, cria um controlador com o nome MailchmpController.php.

utiliza Illuminate\Http\Request;
utiliza Auth;
utiliza o Config;


class MailChimpController extends Controller
{


  public $mailchimp;
  public $listId = '';


  public function __construct(\Mailchimp $mailchimp)
  {
  $this->mailchimp = $mailchimp;
  }


  função pública manageMailC()
  {
  retorna view('mailchimp');
  }


  função pública sub(Request $request)
  {
  $this->validate($request, [
  'email' => 'obrigatório|email',
  ]);


  tenta {

        	
  $this->mailchimp
  ->listas
  ->subscribe(
  $this->listId,
  ['email' => $request->input('email')]
  );


  retorna redirect()->back()->with('success','Email Subscribed ');


  } catch (\Mailchimp_List_AlreadySubscribed $e) {
  retorna redirect()->back()->with('error',Already Subscribed');
  } catch (\Mailchimp_Error $e) {
  devolve redirect()->back()->with('error','Error MailChimp');
  }
  }


  função pública sendComp(Request $request)
  {
  $this->validate($request, [
  'subject' => 'required',
  'to_email' => 'required',
  'from_email' => 'obrigatório',
  'mensagem' => 'obrigatório',
  ]);


  tenta {


  $options = [
  'list_id' => $this->listId,
  'subject' => $request->input('subject'),
  'from_name' => $request->input('from_email'),
  'from_email' => '[email protected]',
  'to_name' => $request->input('to_email')
  ];


  $conteúdo = [
  'html' => $request->input('message'),
  'text' => tira_tags($request->input('message'))
  ];


  $campaign = $this->mailchimp->campaigns->create('regular', $options, $content);
  $this->mailchimp->campaigns->send($campaign['id']);


  devolve redirect()->back()->with('success','send camp successfully');

        	
  } catch (Exception $e) {
  devolve redirect()->back()->with('error','Error MailChimp');
  }
  }


}

Laravel View

Depois de criar o Controller, o próximo passo é criar o teu ficheiro view blade em resources/views/ mailchimp.blade.php. Basta colar o seguinte código no ficheiro. Também podes verificar a integração do MailChimp php no Cloudways, pois é de facto uma plataforma tudo-em-um para te envolveres com o teu público e outras partes interessadas.

@extende('layouts.app')


@secção('conteúdo')
<h2 class="text-center">Exemplo da API do MailChimp</h2>
<div class="contentor">


@se ($message = Session::get('success'))
<div class="alert alert-success alert-block">
  

{Não te preocupes.

</div>
@endif


@se ($message = Session::get('error'))
<div class="alert alert-danger alert-block">
  

{Não te preocupes.

</div>
@endif

 

 

{!! Form::open(array(‘route’ => ‘subscribe’)) !!!}

 

Subscreve o teu e-mail

{!! Form::close() !!!}

 

{!! Form::open(array(‘route’ => ‘sendComp’,’class’=>’form-horizontal’)) !!}

Enviar campanha

{!! Form::close() !!!}

</div>
@secção final

Resolução de problemas comuns de e-mail em Laravel

Problema: Os e-mails não são entregues; as causas potenciais podem ser drivers de e-mail mal configurados, filtros de spam ou listas negras.

Solução: Este é o tipo de erro mais comum que um utilizador tem de enfrentar ao enviar um e-mail; a forma de o resolver é; Processo de resolução de problemas passo a passo para identificar e resolver problemas de entrega de e-mails, incluindo a verificação das configurações do controlador, a verificação das definições de DNS e a gestão da reputação do remetente.

Problema: Configuração de e-mail incorreta; é causada por credenciais SMTP incorretas, parâmetros necessários ausentes ou drivers incompatíveis.

Solução: Instruções detalhadas sobre a revisão e correção das definições de configuração de e-mail, incluindo SMTP, Sendmail e outras configurações específicas do controlador.

Problema: Problemas de autenticação e autorização

Solução: Passos detalhados para verificar as credenciais de autenticação, gerir as definições da firewall e garantir métodos de encriptação adequados para resolver problemas de autenticação.

Problema: Problemas de conteúdo e formatação de e-mails

Solução: Sugestões para validar o conteúdo do e-mail, resolver problemas de tipo MIME, tratar corretamente os anexos e garantir uma formatação consistente do e-mail em diferentes clientes de e-mail.

Problema: Spam ou lista negra de emails; acontece quando o email é marcado como spam, lista negra de domínios ou problemas de reputação.

Solução: Estratégias para melhorar a capacidade de entrega do correio eletrónico, incluindo a implementação de SPF, DKIM e DMARC, a monitorização de listas negras e a manutenção de uma boa reputação do remetente. A ferramenta Easy DMARC também pode ser utilizada para implementar estas estratégias.

Problema: Entrega lenta de e-mail; as causas potenciais desse erro podem ser latência da rede, sobrecarga do servidor ou gestão ineficiente da fila.

Solução: Técnicas para otimizar a velocidade de entrega de correio eletrónico, incluindo a otimização das configurações de filas, a utilização de serviços dedicados de entrega de correio eletrónico e a monitorização do desempenho do servidor.

Melhora o nível do teu alojamento Laravel com o alojamento gerido da Cloudways!

Hospedagem Laravel levada ao próximo nível – A hospedagem gerenciada da Cloudways oferece velocidade e confiabilidade imbatíveis.

Palavras finais

O envio de e-mails é um aspeto crucial de muitas aplicações web, e o Laravel simplifica esse processo com sua robusta funcionalidade de e-mail. A flexibilidade do Laravel permite-te integrar com serviços de e-mail populares como o Mailgun, SendGrid e SES, proporcionando ainda mais versatilidade e fiabilidade.

Usando as ferramentas de e-mail do Laravel, podes implementar com confiança a funcionalidade de e-mail nas tuas aplicações Laravel, garantindo uma comunicação eficiente com os teus utilizadores, clientes ou consumidores. Ao aderir aos padrões da indústria e otimizar continuamente sua infraestrutura de e-mail, você pode oferecer experiências de usuário excepcionais e promover conexões mais fortes com seu público.
Feliz e-mailing!

P: Quais provedores de envio de e-mail de terceiros são suportados por padrão no Laravel?

R: Os seguintes itens são suportados por padrão no Laravel:

  • Pistola de correio
  • Sparkpost
  • Amazon SES

P: Quais são as razões mais comuns pelas quais os e-mails não são entregues?

R: Razões pelas quais os e-mails podem não ser entregues:

  • Um erro técnico no teu guião de programação
  • Bloqueado pelo teu fornecedor de alojamento durante o envio
  • Atingiu o limite da taxa de envio de correio eletrónico definido pelo teu fornecedor de alojamento
  • Bloqueado pelo servidor destinatário devido à “má reputação” do servidor do teu fornecedor de alojamento
  • Foi para o SPAM ou para outra pasta filtrada automaticamente

P: Como utilizar mail() em Laravel?

R: Laravel fornece uma API poderosa e limpa sobre a biblioteca SwiftMailer com drivers para Mailgun, SMTP, Amazon SES, SparkPost e envio de e-mail. Com esta API, podemos enviar e-mails num servidor local, bem como no servidor ao vivo.

Exemplo:
O Laravel permite-nos armazenar mensagens de correio eletrónico nos nossos ficheiros de visualização. Por exemplo, para gerir os nossos emails, podemos criar um diretório de emails dentro do nosso diretório resources/views.

P: Como é que podemos verificar se as mensagens de correio eletrónico foram enviadas no Laravel?

R: Em geral, Mail::failures() devolve um conjunto de endereços de correio eletrónico que falharam.

P: Como posso criar um modelo de e-mail no Laravel?

R: Um ficheiro de modelo de e-mail é um ficheiro simples que podes personalizar para adicionar detalhes e secções personalizadas de acordo com o design do teu modelo de e-mail.

P: Como posso enviar e-mails com Laravel?

R: Podes enviar e-mails no Laravel usando a fachada Mail incorporada. Configura as tuas definições de correio no ficheiro .env, cria uma classe Mailable, e usa o método Mail::to() para enviar emails.

P: Quais são as opções de e-mail para Laravel?

R: O Laravel suporta vários drivers de correio, incluindo SMTP, Mailgun, Postmark, Amazon SES e sendmail. Configura o driver preferido no arquivo .env sob a configuração MAIL_MAILER.

P: Como enviar e-mails automáticos em Laravel?

R: Para enviar e-mails automáticos no Laravel, configura uma tarefa agendada com o recurso Agendamento de tarefas do Laravel e usa a fachada Mail dentro de um comando ou trabalho para automatizar o envio de e-mails.

P: Como criar um modelo de e-mail no Laravel?

R: Cria um ficheiro de vista Blade como modelo de correio eletrónico e, em seguida, referencia-o numa classe Mailable utilizando o método ->view(‘template-name’). Podes incluir dados dinâmicos passando-os para a vista

Share your opinion in the comment section. COMMENT NOW

Share This Article

Inshal Ali

Inshal é um profissional de marketing de conteúdos na Cloudways. Com formação em informática, competências de conteúdo e muita criatividade, ajuda as empresas a chegar ao céu e a ir mais além através de conteúdos que falam a língua dos seus clientes. Para além do trabalho, podes vê-lo sobretudo em alguns jogos online ou num campo de futebol.

×

Webinar: How to Get 100% Scores on Core Web Vitals

Join Joe Williams & Aleksandar Savkovic on 29th of March, 2021.

Do you like what you read?

Get the Latest Updates

Share Your Feedback

Please insert Content

Thank you for your feedback!

Do you like what you read?

Get the Latest Updates

Share Your Feedback

Please insert Content

Thank you for your feedback!

Quer experimentar a plataforma Cloudways em todo o seu esplendor?

Faça um tour guiado GRATUITO pela Cloudways e veja por si mesmo como é fácil gerenciar seu servidor e suas aplicações na principal plataforma de hospedagem em nuvem.

Iniciar mi recorrido