{"id":24905,"date":"2021-05-27T13:12:00","date_gmt":"2021-05-27T10:12:00","guid":{"rendered":"https:\/\/themewp.inform.click\/?p=24905"},"modified":"2021-10-18T02:13:17","modified_gmt":"2021-10-17T23:13:17","slug":"envoyer-un-e-mail-a-l-aide-du-serveur-smtp-gmail-et-de-la-bibliotheque-swift-mailer","status":"publish","type":"post","link":"https:\/\/themewp.inform.click\/fr\/envoyer-un-e-mail-a-l-aide-du-serveur-smtp-gmail-et-de-la-bibliotheque-swift-mailer\/","title":{"rendered":"Envoyer un e-mail \u00e0 l&rsquo;aide du serveur SMTP Gmail et de la biblioth\u00e8que Swift Mailer"},"content":{"rendered":"<p>Voulez-vous envoyer vos e-mails via le serveur SMTP de Gmail\u00a0? Lorsque vous utilisez le serveur SMTP pour vos e-mails, il y a de fortes chances que vos e-mails aillent dans la bo\u00eete de r\u00e9ception de l&rsquo;utilisateur et non dans le spam. Le serveur SMTP emp\u00eache vos e-mails d&rsquo;\u00eatre marqu\u00e9s comme spam. Dans cet article, nous \u00e9tudions comment envoyer des e-mails \u00e0 l&rsquo;aide du serveur SMTP de Gmail et de la biblioth\u00e8que Swift Mailer.<\/p>\n<p>En tant que propri\u00e9taire de site, vous voulez toujours que votre e-mail aille directement dans la bo\u00eete de r\u00e9ception de l&rsquo;utilisateur et non dans le spam ou le courrier ind\u00e9sirable. Cela augmente la probabilit\u00e9 que l&rsquo;utilisateur lise votre e-mail et fasse l&rsquo;action que vous souhaitez.<\/p>\n<h3>Pourquoi avoir besoin d&rsquo;utiliser un serveur SMTP\u00a0?<\/h3>\n<p>Pour un site web, il est normal d&rsquo;avoir un formulaire qui envoie un mail aux utilisateurs ou administrateurs. Il peut s&rsquo;agir de votre newsletter, formulaire de contact ou processus d&rsquo;inscription o\u00f9 vous devez envoyer un e-mail comme accus\u00e9 de r\u00e9ception.<\/p>\n<p>PHP fournit une <code>mail()<\/code>fonction pour envoyer des e-mails. Cependant, si votre serveur ne configure pas correctement les param\u00e8tres de messagerie, cette m\u00e9thode ne fonctionnera pas. Une autre possibilit\u00e9 est que lorsque vous envoyez des e-mails en utilisant la <code>mail()<\/code>m\u00e9thode, cela peut se retrouver dans le spam.<\/p>\n<p>Pour pallier ces 2 situations, vous devez utiliser le serveur SMTP pour l&rsquo;envoi de vos emails.<\/p>\n<p>En utilisant la biblioth\u00e8que <a href=\"https:\/\/swiftmailer.symfony.com\/\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">Swift Mailer<\/a>, l&rsquo;utilisateur peut utiliser n&rsquo;importe quel serveur SMTP comme Gmail, Sendgrid, Mandrill ou votre propre serveur SMTP fourni par l&rsquo;h\u00e9bergement pour envoyer les e-mails. Dans ce tutoriel, je choisis un serveur SMTP Gmail.<\/p>\n<p>Cela dit, voyons comment utiliser la biblioth\u00e8que Swift Mailer pour envoyer des e-mails.<\/p>\n<h3>Installation de courrier rapide<\/h3>\n<p>Pour utiliser la biblioth\u00e8que Swift Mailer, vous devez avoir PHP version 7.2 ou sup\u00e9rieure sur votre serveur. Si vous utilisez l&rsquo;ancienne version, mettez-la \u00e0 niveau vers la derni\u00e8re version de PHP. La plupart des h\u00e9bergeurs comme <a href=\"https:\/\/www.bluehost.com\/track\/artisansweb\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">Bluehost<\/a> mettent \u00e0 niveau la version PHP sur demande. Vous n&rsquo;avez pas besoin d&rsquo;investir votre temps pour mettre \u00e0 jour la version.<\/p>\n<p>\u00c0 l&rsquo;avenir, je recommande d&rsquo;utiliser <a href=\"https:\/\/getcomposer.org\/\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">Composer<\/a> pour installer la biblioth\u00e8que Swift Mailer. Ouvrez le terminal dans le r\u00e9pertoire racine de votre projet et ex\u00e9cutez la commande\u00a0:<\/p>\n<pre><code>composer require swiftmailer\/swiftmailer<\/code><\/pre>\n<p>Comme nous allons utiliser Gmail SMTP, vous devez modifier certains param\u00e8tres de votre compte Google. Connectez-vous \u00e0 votre compte Google et cliquez sur Compte. Une fois sur la page Compte Google, cliquez sur S\u00e9curit\u00e9. Faites d\u00e9filer vers le bas et vous trouverez les param\u00e8tres \u00ab\u00a0Acc\u00e8s moins s\u00e9curis\u00e9 aux applications\u00a0\u00bb. R\u00e9glez-le sur 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=\"Envoyer un e-mail \u00e0 l&#039;aide du serveur SMTP Gmail et de la biblioth\u00e8que Swift Mailer\" ><\/a><\/p>\n<h3>Envoyer un e-mail \u00e0 l&rsquo;aide du serveur SMTP Gmail et de la biblioth\u00e8que Swift Mailer<\/h3>\n<p>\u00c0 ce stade, vous \u00eates pr\u00eat avec la biblioth\u00e8que Swift Mailer et vous avez \u00e9galement modifi\u00e9 les param\u00e8tres du compte Gmail. Maintenant, vous \u00eates pr\u00eat \u00e0 aller de l&rsquo;avant.<\/p>\n<p>Disons que vous avez un fichier dans <code>sendmail.php<\/code>lequel vous devez \u00e9crire un code qui envoie des e-mails. \u00c9crivez le code ci-dessous dans votre fichier PHP.<\/p>\n<p><strong>envoyermail.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>Dans le code ci-dessus, j&rsquo;ai transmis les valeurs ci-dessous pour les param\u00e8tres du serveur SMTP Gmail.<\/p>\n<ul>\n<li>Adresse du serveur SMTP de Google\u00a0: smtp.googlemail.com<\/li>\n<li>Port SMTP de Gmail\u00a0:\u00a0465<\/li>\n<li>Cryptage\u00a0:\u00a0ssl<\/li>\n<\/ul>\n<p>En dehors de ces valeurs, vous devez modifier d&rsquo;autres espaces r\u00e9serv\u00e9s tels que YOUR_GMAIL_USERNAME, YOUR_GMAIL_PASSWORD, etc.<\/p>\n<p>Apr\u00e8s avoir remplac\u00e9 toutes les valeurs, ex\u00e9cutez ce fichier sur un navigateur. Vous devriez recevoir l&rsquo;e-mail dans la bo\u00eete de r\u00e9ception, pas dans le spam.<\/p>\n<h3>Envoyer des pi\u00e8ces jointes simples ou multiples dans un e-mail<\/h3>\n<p>Parfois, vous devrez peut-\u00eatre envoyer des pi\u00e8ces jointes dans un e-mail. En utilisant Swift Mailer, vous pouvez envoyer une ou plusieurs pi\u00e8ces jointes comme suit\u00a0:<\/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>Tout ce que vous avez \u00e0 faire est d&rsquo;utiliser la <code>attach<\/code>m\u00e9thode et de transmettre le chemin absolu du fichier que vous devez envoyer en pi\u00e8ce jointe. Ici, je suppose que vous devez envoyer &lsquo;sample.png&rsquo; et &lsquo;sample-ebook.pdf&rsquo; en pi\u00e8ces jointes.<\/p>\n<p>Notre code final est donc le suivant.<\/p>\n<p><strong>envoyermail.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>Il s&rsquo;agit d&rsquo;envoyer des e-mails via la biblioth\u00e8que Swift Mailer. Vous pouvez \u00e9galement utiliser <a href=\"https:\/\/blog.mailtrap.io\/swiftmailer-sendmail\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">Symfony Swift Mailer<\/a> pour envoyer des messages via quelques serveurs SMTP comme Mailgun, Mandrill, etc. J&rsquo;aimerais entendre vos r\u00e9flexions et suggestions dans la section commentaires ci-dessous.<\/p>\n<h4>Articles Li\u00e9s<\/h4>\n<ul>\n<li><a href=\"https:\/\/themewp.inform.click\/fr\/envoyer-un-e-mail-a-l-aide-du-serveur-smtp-de-gmail-a-partir-d-un-script-php\/\" title=\"Envoyer un e-mail \u00e0 l&#039;aide du serveur SMTP de Gmail \u00e0 partir d&#039;un script PHP\">Envoyer un e-mail \u00e0 l&rsquo;aide du serveur SMTP de Gmail \u00e0 partir d&rsquo;un script PHP<\/a><\/li>\n<li><a href=\"https:\/\/themewp.inform.click\/fr\/comment-envoyer-un-e-mail-wordpress-a-l-aide-du-serveur-smtp\/\" title=\"Comment envoyer un e-mail WordPress \u00e0 l&#039;aide du serveur SMTP\">Comment envoyer un e-mail WordPress \u00e0 l&rsquo;aide du serveur SMTP<\/a><\/li>\n<li><a href=\"https:\/\/themewp.inform.click\/fr\/envoi-d-e-mails-via-le-serveur-smtp-de-gmail-dans-laravel\/\" title=\"Envoi d&#039;e-mails via le serveur SMTP de Gmail dans Laravel\">Envoi d&rsquo;e-mails via le serveur SMTP de Gmail dans Laravel<\/a><\/li>\n<\/ul>\n<p><div id=\"PostUnique_PostSource\" style=\"padding-top: 50px\">Source d&rsquo;enregistrement:  <a target=\"_blank\" rel=\"noopener nofollow\" href=\"\/\/artisansweb.net\" class=\"external external_icon\">artisansweb.net<\/a><\/div><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Souhaitez-vous utiliser le serveur SMTP de Gmail pour envoyer des e-mails\u00a0? Dans cet article, nous \u00e9tudions comment envoyer des e-mails \u00e0 l&rsquo;aide du serveur SMTP de Gmail et de Swift Mailer Library.<\/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":[273],"tags":[844],"class_list":["post-24905","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-php-4","tag-affiai-fr"],"_links":{"self":[{"href":"https:\/\/themewp.inform.click\/fr\/wp-json\/wp\/v2\/posts\/24905","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/themewp.inform.click\/fr\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/themewp.inform.click\/fr\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/themewp.inform.click\/fr\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/themewp.inform.click\/fr\/wp-json\/wp\/v2\/comments?post=24905"}],"version-history":[{"count":0,"href":"https:\/\/themewp.inform.click\/fr\/wp-json\/wp\/v2\/posts\/24905\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/themewp.inform.click\/fr\/wp-json\/wp\/v2\/media\/21614"}],"wp:attachment":[{"href":"https:\/\/themewp.inform.click\/fr\/wp-json\/wp\/v2\/media?parent=24905"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/themewp.inform.click\/fr\/wp-json\/wp\/v2\/categories?post=24905"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/themewp.inform.click\/fr\/wp-json\/wp\/v2\/tags?post=24905"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}