{"id":27892,"date":"2021-05-27T12:37:00","date_gmt":"2021-05-27T09:37:00","guid":{"rendered":"https:\/\/themewp.inform.click\/?p=27892"},"modified":"2021-10-18T04:08:56","modified_gmt":"2021-10-18T01:08:56","slug":"enviar-e-mail-usando-o-servidor-smtp-do-gmail-e-a-biblioteca-swift-mailer","status":"publish","type":"post","link":"https:\/\/themewp.inform.click\/pt-pt\/enviar-e-mail-usando-o-servidor-smtp-do-gmail-e-a-biblioteca-swift-mailer\/","title":{"rendered":"Enviar e-mail usando o servidor SMTP do Gmail e a biblioteca Swift Mailer"},"content":{"rendered":"<p>Quer enviar seus e-mails usando o servidor SMTP do Gmail? Quando voc\u00ea usa o servidor SMTP para seus e-mails, h\u00e1 uma grande chance de seus e-mails irem para a caixa de entrada do usu\u00e1rio e n\u00e3o para o spam. O servidor SMTP impede que seus e-mails sejam marcados como spam. Neste artigo, estudamos como enviar e-mail usando o servidor SMTP do Gmail e a biblioteca Swift Mailer.<\/p>\n<p>Como propriet\u00e1rio de um site, voc\u00ea sempre deseja que seu e-mail v\u00e1 direto para a caixa de entrada do usu\u00e1rio e n\u00e3o para o spam ou lixo eletr\u00f4nico. Isso aumenta a probabilidade de o usu\u00e1rio ler seu e-mail e realizar a a\u00e7\u00e3o que deseja.<\/p>\n<h3>Por que precisa usar o servidor SMTP?<\/h3>\n<p>Para um site, \u00e9 normal ter um formul\u00e1rio que envia um e-mail para usu\u00e1rios ou administradores. Pode ser seu boletim informativo, formul\u00e1rio de contato ou processo de registro, onde voc\u00ea precisa enviar um e-mail como um agradecimento.<\/p>\n<p>PHP fornece uma <code>mail()<\/code>fun\u00e7\u00e3o para enviar e-mails. No entanto, se o seu servidor n\u00e3o definir as configura\u00e7\u00f5es de e-mail corretamente, esse m\u00e9todo n\u00e3o funcionar\u00e1. Outra possibilidade \u00e9 quando voc\u00ea envia e-mails usando o <code>mail()<\/code>m\u00e9todo, pode acabar em spam.<\/p>\n<p>Para superar essas 2 situa\u00e7\u00f5es, voc\u00ea deve usar o servidor SMTP para o envio de seus e-mails.<\/p>\n<p>Usando a biblioteca <a href=\"https:\/\/swiftmailer.symfony.com\/\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">Swift Mailer<\/a>, o usu\u00e1rio pode usar qualquer servidor SMTP como Gmail, Sendgrid, Mandrill ou seu pr\u00f3prio servidor SMTP de hospedagem para enviar os e-mails. Neste tutorial, escolho um servidor SMTP do Gmail.<\/p>\n<p>Dito isso, vamos dar uma olhada em como usar a biblioteca Swift Mailer para enviar e-mails.<\/p>\n<h3>Instala\u00e7\u00e3o do Swift Mailer<\/h3>\n<p>Para usar a biblioteca Swift Mailer, voc\u00ea deve ter o PHP vers\u00e3o 7.2 ou superior em seu servidor. Se voc\u00ea estiver usando a vers\u00e3o mais antiga, atualize-a para a vers\u00e3o mais recente do PHP. A maioria dos provedores de hospedagem, como o <a href=\"https:\/\/www.bluehost.com\/track\/artisansweb\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">Bluehost,<\/a> atualizam a vers\u00e3o do PHP mediante solicita\u00e7\u00e3o. Voc\u00ea n\u00e3o precisa investir seu tempo para atualizar a vers\u00e3o.<\/p>\n<p>Indo em frente, eu recomendo usar o <a href=\"https:\/\/getcomposer.org\/\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">Composer<\/a> para instalar a biblioteca Swift Mailer. Abra o terminal no diret\u00f3rio raiz do seu projeto e execute o comando:<\/p>\n<pre><code>composer require swiftmailer\/swiftmailer<\/code><\/pre>\n<p>Como usaremos o SMTP do Gmail, voc\u00ea precisa alterar algumas configura\u00e7\u00f5es em sua conta do Google. Fa\u00e7a login em sua conta do Google e clique em Conta. Quando estiver na p\u00e1gina da Conta do Google, clique em Seguran\u00e7a. Role para baixo at\u00e9 a parte inferior e voc\u00ea encontrar\u00e1 as configura\u00e7\u00f5es de &#8216;Acesso de aplicativo menos seguro&#8217;. Defina-o como ON.<\/p>\n<p><a href=\"https:\/\/themewp.inform.click\/wp-content\/uploads\/2021\/04\/post-20453-6081f3f519b19.png\" data-rel=\"lightbox\"><img decoding=\"async\" class=\"SDStudio-light-box-enable SDStudio-editor-tools-md-imp\" src=\"https:\/\/themewp.inform.click\/wp-content\/uploads\/2021\/04\/post-20453-6081f3f519b19.png\" alt=\"Enviar e-mail usando o servidor SMTP do Gmail e a biblioteca Swift Mailer\" ><\/a><\/p>\n<h3>Enviar e-mail usando o servidor SMTP do Gmail e a biblioteca Swift Mailer<\/h3>\n<p>Nesta fase, voc\u00ea est\u00e1 pronto com a biblioteca do Swift Mailer e tamb\u00e9m alterou as configura\u00e7\u00f5es da conta do Gmail. Agora, voc\u00ea est\u00e1 pronto para ir em frente.<\/p>\n<p>Digamos que voc\u00ea tenha um arquivo no <code>sendmail.php<\/code>qual precisa escrever um c\u00f3digo que envia e-mails. Escreva o c\u00f3digo abaixo em seu arquivo PHP.<\/p>\n<p><strong>sendmail.php<\/strong><\/p>\n<pre><code>&lt;?php\nrequire_once 'vendor\/autoload.php';\n\u00a0\ntry {\n\u00a0\u00a0\u00a0\u00a0\/\/ Create the Transport\n\u00a0\u00a0\u00a0\u00a0$transport = (new Swift_SmtpTransport('smtp.googlemail.com', 465, 'ssl'))\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0-&gt;setUsername('YOUR_GMAIL_USERNAME')\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0-&gt;setPassword('YOUR_GMAIL_PASSWORD')\n\u00a0\u00a0\u00a0\u00a0;\n\u00a0\n\u00a0\u00a0\u00a0\u00a0\/\/ Create the Mailer using your created Transport\n\u00a0\u00a0\u00a0\u00a0$mailer = new Swift_Mailer($transport);\n\u00a0\n\u00a0\u00a0\u00a0\u00a0\/\/ Create a message\n\u00a0\u00a0\u00a0\u00a0$body = 'Hello, &lt;p&gt;Email sent through &lt;span style=\"color:red;\"&gt;Swift Mailer&lt;\/span&gt;.&lt;\/p&gt;';\n\u00a0\n\u00a0\u00a0\u00a0\u00a0$message = (new Swift_Message('Email Through Swift Mailer'))\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0-&gt;setFrom(['FROM_EMAIL_ADDRESS' =&gt; 'FROM_NAME'])\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0-&gt;setTo(['RECEPIENT_1_EMAIL_ADDRESS'])\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0-&gt;setCc(['RECEPIENT_2_EMAIL_ADDRESS'])\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0-&gt;setBcc(['RECEPIENT_3_EMAIL_ADDRESS'])\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0-&gt;setBody($body)\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0-&gt;setContentType('text\/html')\n\u00a0\u00a0\u00a0\u00a0;\n\u00a0\n\u00a0\u00a0\u00a0\u00a0\/\/ Send the message\n\u00a0\u00a0\u00a0\u00a0$mailer-&gt;send($message);\n\u00a0\n\u00a0\u00a0\u00a0\u00a0echo 'Email has been sent.';\n} catch(Exception $e) {\n\u00a0\u00a0\u00a0\u00a0echo $e-&gt;getMessage();\n}<\/code><\/pre>\n<p>No c\u00f3digo acima, passei os valores abaixo para as configura\u00e7\u00f5es do servidor SMTP do Gmail.<\/p>\n<ul>\n<li>Endere\u00e7o do servidor SMTP do Google: smtp.googlemail.com<\/li>\n<li>Porta SMTP do Gmail: 465<\/li>\n<li>Criptografia: ssl<\/li>\n<\/ul>\n<p>Al\u00e9m desses valores, voc\u00ea precisa alterar outros marcadores de posi\u00e7\u00e3o, como YOUR_GMAIL_USERNAME, YOUR_GMAIL_PASSWORD, etc.<\/p>\n<p>Depois de substituir todos os valores, execute este arquivo em um navegador. Voc\u00ea deve receber o e-mail na caixa de entrada, n\u00e3o no spam.<\/p>\n<h3>Envie um ou v\u00e1rios anexos em um e-mail<\/h3>\n<p>\u00c0s vezes, pode ser necess\u00e1rio enviar anexos por e-mail. Usando o Swift Mailer, voc\u00ea pode enviar um ou v\u00e1rios anexos da seguinte forma:<\/p>\n<pre><code>$message-&gt;attach(Swift_Attachment::fromPath(__DIR__. '\/sample.png')); \/\/absolute path for your attachment\n$message-&gt;attach(Swift_Attachment::fromPath(__DIR__. '\/sample-ebook.pdf'));<\/code><\/pre>\n<p>Tudo que voc\u00ea precisa fazer \u00e9 usar o <code>attach<\/code>m\u00e9todo e passar o caminho absoluto do arquivo que voc\u00ea precisa enviar como um anexo. Presumo que voc\u00ea precise enviar &#8216;sample.png&#8217; e &#8216;sample-ebook.pdf&#8217; como anexos.<\/p>\n<p>Portanto, nosso c\u00f3digo final \u00e9 o seguinte.<\/p>\n<p><strong>sendmail.php<\/strong><\/p>\n<pre><code>&lt;?php\nrequire_once 'vendor\/autoload.php';\n\u00a0\ntry {\n\u00a0\u00a0\u00a0\u00a0\/\/ Create the Transport\n\u00a0\u00a0\u00a0\u00a0$transport = (new Swift_SmtpTransport('smtp.googlemail.com', 465, 'ssl'))\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0-&gt;setUsername('YOUR_GMAIL_USERNAME')\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0-&gt;setPassword('YOUR_GMAIL_PASSWORD')\n\u00a0\u00a0\u00a0\u00a0;\n\u00a0\n\u00a0\u00a0\u00a0\u00a0\/\/ Create the Mailer using your created Transport\n\u00a0\u00a0\u00a0\u00a0$mailer = new Swift_Mailer($transport);\n\u00a0\n\u00a0\u00a0\u00a0\u00a0\/\/ Create a message\n\u00a0\u00a0\u00a0\u00a0$body = 'Hello, &lt;p&gt;Email sent through &lt;span style=\"color:red;\"&gt;Swift Mailer&lt;\/span&gt;.&lt;\/p&gt;';\n\u00a0\n\u00a0\u00a0\u00a0\u00a0$message = (new Swift_Message('Email Through Swift Mailer'))\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0-&gt;setFrom(['FROM_EMAIL_ADDRESS' =&gt; 'FROM_NAME'])\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0-&gt;setTo(['RECEPIENT_1_EMAIL_ADDRESS'])\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0-&gt;setCc(['RECEPIENT_2_EMAIL_ADDRESS'])\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0-&gt;setBcc(['RECEPIENT_3_EMAIL_ADDRESS'])\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0-&gt;setBody($body)\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0-&gt;setContentType('text\/html')\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0-&gt;attach(Swift_Attachment::fromPath(__DIR__. '\/sample.png'))\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0-&gt;attach(Swift_Attachment::fromPath(__DIR__. '\/sample-ebook.pdf'))\n\u00a0\u00a0\u00a0\u00a0;\n\u00a0\n\u00a0\u00a0\u00a0\u00a0\/\/ Send the message\n\u00a0\u00a0\u00a0\u00a0$mailer-&gt;send($message);\n\u00a0\n\u00a0\u00a0\u00a0\u00a0echo 'Email has been sent.';\n} catch(Exception $e) {\n\u00a0\u00a0\u00a0\u00a0echo $e-&gt;getMessage();\n}<\/code><\/pre>\n<p>\u00c9 tudo sobre como enviar e-mail por meio da biblioteca do Swift Mailer. Voc\u00ea tamb\u00e9m pode usar o <a href=\"https:\/\/blog.mailtrap.io\/swiftmailer-sendmail\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">Symfony Swift Mailer<\/a> para enviar mensagens atrav\u00e9s de alguns servidores SMTP como Mailgun, Mandrill, etc. Gostaria de ouvir sua opini\u00e3o e sugest\u00f5es na se\u00e7\u00e3o de coment\u00e1rios abaixo.<\/p>\n<h4>Artigos relacionados<\/h4>\n<ul>\n<li><a href=\"https:\/\/themewp.inform.click\/pt-pt\/enviar-e-mail-usando-o-servidor-smtp-do-gmail-a-partir-de-script-php\/\" title=\"Enviar e-mail usando o servidor SMTP do Gmail a partir de script PHP\">Enviar e-mail usando o servidor SMTP do Gmail a partir de script PHP<\/a><\/li>\n<li><a href=\"https:\/\/themewp.inform.click\/pt-pt\/como-enviar-e-mail-do-wordpress-usando-o-servidor-smtp\/\" title=\"Como enviar e-mail WordPress usando o servidor SMTP\">Como enviar e-mail WordPress usando o servidor SMTP<\/a><\/li>\n<li><a href=\"https:\/\/themewp.inform.click\/pt-pt\/enviando-e-mail-via-servidor-smtp-do-gmail-no-laravel\/\" title=\"Enviando e-mail via servidor SMTP do Gmail no Laravel\">Enviando e-mail via servidor SMTP do Gmail no Laravel<\/a><\/li>\n<\/ul>\n<p><div id=\"PostUnique_PostSource\" style=\"padding-top: 50px\">Fonte de grava\u00e7\u00e3o:  <a target=\"_blank\" rel=\"noopener nofollow\" href=\"\/\/artisansweb.net\" class=\"external external_icon\">artisansweb.net<\/a><\/div><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Voc\u00ea deseja usar o servidor SMTP do Gmail para enviar e-mails? Neste artigo, estudamos como enviar e-mails usando o servidor SMTP do Gmail e a biblioteca Swift Mailer.<\/p>\n","protected":false},"author":1,"featured_media":21614,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":"","_wp_rev_ctl_limit":""},"categories":[278],"tags":[848],"class_list":["post-27892","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-php-9","tag-affiai-pt-pt"],"_links":{"self":[{"href":"https:\/\/themewp.inform.click\/pt-pt\/wp-json\/wp\/v2\/posts\/27892","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/themewp.inform.click\/pt-pt\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/themewp.inform.click\/pt-pt\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/themewp.inform.click\/pt-pt\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/themewp.inform.click\/pt-pt\/wp-json\/wp\/v2\/comments?post=27892"}],"version-history":[{"count":0,"href":"https:\/\/themewp.inform.click\/pt-pt\/wp-json\/wp\/v2\/posts\/27892\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/themewp.inform.click\/pt-pt\/wp-json\/wp\/v2\/media\/21614"}],"wp:attachment":[{"href":"https:\/\/themewp.inform.click\/pt-pt\/wp-json\/wp\/v2\/media?parent=27892"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/themewp.inform.click\/pt-pt\/wp-json\/wp\/v2\/categories?post=27892"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/themewp.inform.click\/pt-pt\/wp-json\/wp\/v2\/tags?post=27892"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}