标签: SendGrid

  • 如何为WordPress网站配置SMTP发信邮局

    默认情况下,WordPress使用不可靠的PHP邮件功能,并且所发出的电子邮件经常会被邮件服务商标记为垃圾邮件。使用SMTP服务器是确保WordPress电子邮件可传递性的最佳方法。

    在本教程中,我们将详细介绍如何使用免费的SMTP服务器发送WordPress电子邮件。

    配置SMTP发信邮局

    为什么使用SMTP服务器发送WordPress电子邮件?

    WordPress站长经常遭遇无法发送电子邮件问题,解决此问题的最简单方法是使用SMTP服务器。

    默认情况下,WordPress通过PHP mail发送电子邮件。不幸的是,并非所有WordPress所托管的服务器正确配置PHP mail,再说大部分国内的服务器提供商已经禁用了服务器邮局功能。

    此外,即使使用PHP mail成功发送了电子邮件,也可能会被邮件接收服服务器错误地识别为垃圾邮件。

    确保WordPress电子邮件可传递性的最佳方法是使用SMTP服务器。这是在Internet上发送电子邮件的标准协议。

    SMTP服务器使用正确的身份验证来确保电子邮件是由授权发件人发送的。这样可以提高可传递性,并且电子邮件可以安全地进入用户的收件箱。

    要在WordPress网站上使用SMTP服务器,需要借助第三方插件来实现。当然部分WordPress主题也附带了SMTP邮局功能,比如闪电博提供的WordPress付费主题

    如果需要使用插件实现,我们推荐使用WP Mail SMTP插件,它是目前WordPress的最佳SMTP插件,即使免费版本也能够满足站长的基本需求。

    使用WP Mail SMTP插件配置SMTP邮局

    第一步是安装并启用WP Mail SMTP插件

    启用后,进入WordPress管理后台中的 WP Mail SMTP » Settings 页面进一步设置。

    WP Mail SMTP设置

    您需要先输入“From Email(发件人电子邮件)”和“From Name(发件人姓名)”。WordPress电子邮件将以你设置的电子邮件地址和名称发送。

    此外务必选中“Force From Name”复选框,以确保来自WordPress站点的所有电子邮件都是通过SMTP服务器以设置好的电子邮件地址发出。

    提示:只需勾选“Force From Name”即可保证所有电子邮件都来自相同的名称,即可忽略其他插件(例如WPForms)的设置。

    WP Mail SMTP发件人设置

    接下来,需要选择一个SMTP邮件服务,如下图所示。

    WP Mail SMTP发信邮局设置

    注:下面的教程将会以列表中的SMTP服务器为例子进行说明,如果你要使用163邮箱或者QQ邮箱提供的SMTP服务,建议阅读163邮箱&QQ邮箱SMTP邮局设置教程。国内网站建议尽可能选择国内的SMTP服务器,而不是国外的SMTP服务器。

    下面将介绍多个海外不同的免费SMTP服务。您需要保持WP Mail SMTP设置选项卡打开,然后按照所选SMTP服务的说明进行操作。

    使用Sendinblue提供的SMTP服务器发送邮件

    Sendinblue支持每日最多发送300封免费电子邮件。

    首先,需要在Sendinblue网站上创建一个帐户。验证你的电子邮件地址后,网站会要求您选择一个Sendinblue付费计划。点击“Continue with a Free plan”按钮进入下一步。

    Sendinblue免费套餐

    接着,你需要输入收到确认码已完成注册步骤。注册成功后,进入Sendinblue管理仪表盘。

    Sendinblue账号后台

    在继续之前,你需要访问域名管理创建一个子域,例如mail1.yourdomain.com。(在这里就不对子域名设置展开说明了)

    创建子域后,将其添加到您的Sendinblue帐户中。转到“Settings”页面。在此页面上,滚动到“Your Senders and Domains”部分,然后单击其下面的“Configure”按钮。

    Sendinblue域名设置

    接下来,点击“Domains”标签,然后点击“Add a New Domain”按钮。

    Sendinblue域名添加

    输入前面你配置好的域名子域,例如mail1.yoursite.com。确保选中复选框,以确认要使用域名对电子邮件进行数字签名。然后,单击“Save”按钮。

    Sendinblue域名添加验证

    保存后,将会出现一个弹出列表,要求您进行验证域步骤。默认验证方法为上传文件,又或者使用添加DNS条目。可以根据自己的便利性选择合适的方法。(关于域名验证的步骤,小编就不再展开说明,毕竟所有域名验证的步骤都大同小异)

    Sendinblue域名DNS验证

    提示:如果误关闭了此弹出窗口,可以通过点击子域旁边的“Verify This Domain”链接来重新验证域。

    Sendinblue域名验证

    完成文件上传或者添加DNS条目后,返回Sendinblue并继续往下走。

    Sendinblue域名验证DNS记录

    提示: DNS更改最多可能需要24到48小时才生效。如果验证失败,请在几个小时后重试。或者改用上传文件验证。

    完成此操作后,您还需要再输入两个DNS TXT记录,以便Sendinblue可以对从您的域发送的电子邮件进行身份验证。这提高了可传递性。

    在Sendinblue中,单击您域旁边的“Manage”下拉菜单,然后选择“Authenticate this domain”选项,进一步验证域。

    您将看到一个弹出窗口,其中包含需要添加的DNS记录的详细信息。您只需要添加前3个DNS记录,如果前面做了一次DNS条目验证,则第三个无需再添加,第四个可以忽略。

    Sendinblue域名DNS记录验证

    每当你在域名管理添加了DNS TXT记录,点击对应的“Record Added. Please Verify It”进行验证。

    完成上述步骤,返回WP Mail SMTP设置页面,然后找到API Key输入框,点击“Get v3 API Key”链接。

    Sendinblue授权API key

    这将会在新标签中打开您的Sendinblue帐户的SMTP&API页面,复制API KEY即可。

    Sendinblue授权API key生成

    再次返回WP Mail SMTP设置页面并粘贴API KEY,点击Save Settings即可。

    WP Mail SMTP设置API Key

    完成上述操作后,只需要等待Se​​ndinblue激活您的帐户即可发送测试邮件,看设置是否成功。

    使用Gmail提供的SMTP服务器发送邮件

    注:国内不能直接使用谷歌的API服务,需要梯子辅助!

    如果你的网站主要是面对国外访客,也可以考虑使用免费的Gmail帐户发送SMTP电子邮件。如果您还没有Gmail帐户,需要创建一个帐户,然后再按照下面的说明进行操作。

    首先,确保安装并启用了WP Mail SMTP插件。在 WP Mail SMTP » Settings 页面上,选择Gmail作为Mailer。

    在下一个界面,您将会看到需要输入Client ID,Client Secret及URL,不要关闭此页面。

    WP Mail SMTP插件Gmail配置

    访问Google Developers Console网站,同意条款和条件后,点击“Create Project”按钮。

    Google开发者项目创建

    输入项目名称后,点击Create按钮进入下一个步骤。

    Google新项目创建

    在项目仪表盘,点击“Enable APIs and Services”按钮。

    Google新项目API启用

    进入到谷歌的API库,在搜索栏中输入“Gmail”进行搜索。

    Gmail服务API

    在搜索结果中找到Gmail API,点击进入下一步。

    Gmail服务API2

    接下来,您将看到有关Gmail API的一些信息,单击Enable按钮。

    Gmail服务API启用

    启用该API可能需要花费几秒钟,接下来点击“Create Credentials”按钮。

    Gmail服务API凭证创建

    在下一个步骤,您需要完成以下选项设置:

    • 您正在使用哪个API?-Gmail API
    • 您将从哪里调用API?-Web browser (Javascript)
    • 您将访问哪些数据?-User data

    最后点击“What credentials do I need?”。

    Gmail服务API凭证信息填写

    将会弹出窗口提示创建OAuth同意,点击“Set Up Consent Screen”链接即可。

    Gmail服务API同意协议

    OAuth同意界面将在新标签中打开。在这里,您需要选择“External”类型,然后单击“Create ”按钮。

    Gmail服务API同意协议类型

    接下来,需要填写应用名称及支持邮件地址。

    google oauth app注册信息填写

    向下滚动到“Authorized domains”部分,单击“Add Domain”按钮,然后输入网站域名。

    注:域名无需填写httphttps或者www

    接填写开发者联系邮箱,点击“Save and Continue”按钮。

    Google APP开发者联系信息

    在“Test users”步骤,单击“Add Users”按钮,输入您的Gmail地址。

    Google APP测试用户

    然后,再次按“保存并继续”。继续并返回到其他选项卡以设置项目的凭据。您可以输入任何名称,也可以直接保留默认名称。

    在“Authorized JavaScript origins”中,输入网站的域名。

    在“Authorized redirect URIs”,您会找到需要在WP Mail SMTP的设置中输入重定向URL(这部分信息很重要,复制保存下来)

    创建OAuth和客户端ID

    点击下方的“Refresh”按钮,即会出现“Create OAuth client ID”按钮,点击进入最后步骤。

    创建OAuth和客户端ID-2

    至此,已完成Google Web应用程序创建,单击“Done”按钮。

    创建OAuth和客户端ID-3

    跟着下来,将看到列出刚刚创建Web应用程序,单击其旁边的编辑图标。

    Google Web APP列表

    即可看到WP Mail SMTP插件设置所需要的Client IDClient Secret(这部分信息很重要,复制保存下来)

    Web APP客户端ID和密钥

    将“这部分信息很重要”内容复制并粘贴到WP Mail SMTP设置页面中。然后,继续并单击“Save Settings”按钮。

    WP Mail SMTP客户端ID及密钥设置

    页面刷新后,向下滚动,然后单击“Allow plugin to send emails using your Google account”按钮。

    WP Mail SMTP邮件发送授权

    在打开的弹出窗口,选择您的电子邮件帐户。您将看到一个警告界面,只需单击“Advanced”链接,然后单击左下角“Go to wpmailsmtp.com”链接(忽略安全提醒,因为这个APP是你自己创建的)。

    APP授权步骤

    Google将会弹出窗口,要求您授予权限。继续单击“Allow ”按钮。

    谷歌APP授权提醒

    Google会让你再次勾选确认,单击“Allow”按钮即可。

    谷歌APP授权同意确认

    最后,将会返回到WP Mail SMTP插件界面。您将会看到一条消息,确认您已成功将网站链接到Google API项目。

    完事,自己给自己发个测试邮件,看SMTP邮局是否生效。

    使用MailGun提供的SMTP服务器发送邮件

    MailGun是另一个广受欢迎的SMTP电子邮件服务提供商,支持3个月内免费发送电子邮件5,000封/月。

    首先,访问MailGun网站点击“Start Sending”按钮以注册一个帐户。

    MailGun要求填入信用卡详细信息(这一点不太友好,不过老外经常喜欢这么干)。如果超出免费的范围,则将按0.80美元/每1,000封电子邮件收费。

    完成后,点击页面底部的“Create Account”按钮。

    MailGun账号注册

    然后您将会进入帐户仪表盘。

    MailGun账号管理后台

    在继续设置下面的步骤之前,务必登入你的注册邮箱找到来自Mailgun的验证电子邮件,点击电子邮件中的链接激活您的Mailgun帐户。

    提示:您还将收到一封电子邮件,通知您API密钥已添加到Mailgun帐户中。

    Mailgun邮箱验证

    点击验证链接后,将提示您输入并验证您的手机号码。接下来,再次回到Mailgun仪表板。

    同样,Mailgun也要求创建一个网站域名的子域,例如mg.yourdomain.com(此处不展开说明)。

    创建子域后,返回到Mailgun仪表板,然后转到 Domains » Subdomains 页面。

    mailgun新增域名

    接下来,输入前面创建好的域名子域。

    只需将“Domain region”设置为US即可,除非您在EU内。

    点击下面的“Advanced Settings (DKIM)”链接进入DKIM设置。

    选中“Create DKIM Authority”复选框,“DKIM key length”选择为2048。

    然后,继续并点击“Add Domain”按钮。

    mailgun新增子域名设置

    您将进入域名验证步骤-“Add DNS records for sending”。

    mailgun新增子域名DNS记录

    您需要登录域名管理网站的域名解析管理,并将特定的DNS记录添加到您的子域中。同样,不对域名验证部分展开说明。根据相关提示操作即可。

    在域名解析管理按要求输入TXT和MX记录后,点击页面底部的“Verify DNS Settings”按钮。

    接着您将看到一个询问您要如何发送电子邮件的界面。忽略它,转到Settings » API key页面。点击Private API key旁边的查看按钮后将其复制。

    mailgun生成隐私API密钥

    接下来,将复制好的private API key粘贴到WP Mail SMTP设置中。同时输入前面设置的子域名和选择了正确的区域,最后点击“Save Settings”按钮。

    WP Mail SMTP插件Mailgun配置

    最后还是测试下所设置的SMTP邮局是否有效,尝试给自己发封邮件看看。

    使用SendGrid提供的SMTP服务器发送邮件

    SendGrid提供前30天内免费发送最多40,000封电子邮件。之后,每天最多提供100封免费电子邮件。

    首先,访问SendGrid网站并单击“Start For Free”按钮来创建免费帐户。

    创建帐户后,进入SendGrid仪表盘。

    第一步,单击“Create a Single Sender”按钮创建发件人身份。

    SendGrid创建发件人

    然后,输入发件人姓名、发件人邮箱地址,接受回复邮件邮箱地址,公司地址及其他地址信息,昵称等。

    重要提示:From Email Address必须与WP Mail SMTP设置的“From address”的电子邮件地址相同。

    SendGrid发件人信息填写

    然后,在“Senders ”表中可以看到您的详细信息。

    SendGrid发件人信息资料

    您将收到验证电子邮件邮件,以验证此公司电子邮件地址。

    verify-single-sender-sendgrid

    成功验证电子邮件地址后,点击侧边栏中的“Dashboard”链接返回到SendGrid仪表盘

  • 如何为WordPress配置SendGrid以发送电子邮件

    如何为WordPress配置SendGrid以发送电子邮件

    排除WordPress不发送电子邮件的故障时,这有时会有点棘手。为什么?因为许多托管的WordPress主机不提供传统的电子邮件托管。

    SendGrid是另一个流行的交易电子邮件服务提供商。事务性电子邮件的一些示例包括新用户注册电子邮件、密码重置电子邮件、WooCommerce订单通知等。基本上,网站功能或任何与营销无关的内容所需的基本电子邮件。这意味着您通常可以起床走动,而不必担心电子邮件。

    因此,如果您需要完全控制您的DNS记录 (DKIM) 或在发送电子邮件时遇到问题,那么使用第三方SMTP提供商(事务性电子邮件服务)配置您自己的WordPress会很有帮助。

    今天我们将向您展示如何在WordPress中配置SendGrid以发送电子邮件。

    1. 什么是SendGrid?
    2. 创建SendGrid帐户和API密钥
    3. 如何使用Post SMTP插件配置SendGrid
    4. 配置SendGrid域身份验证

    什么是SendGrid?

    SendGrid(现在归Twilio所有)被业内一些知名企业使用,例如Uber、Spotify、Yelp、Airbnb等。它最初是为开发人员设计的事务性电子邮件SMTP和API服务。但是,他们现在也提供电子邮件营销功能。因此,您可以将它们用于一个或另一个或两者。今天我们将关注事物的事务性方面,因为这可能是你们大多数人试图启动和运行的。

    SendGrid有30天的免费试用期,您最多可以发送40,000封电子邮件。之后,您可以永远免费继续免费试用,每天最多发送100封电子邮件。

    如果您需要更多电子邮件,他们的Essentials计划起价为每月14.95美元,您每月最多可以发送40,000封电子邮件。每封额外电子邮件的费用为0.001美元。但您也可以升级到更高的计划以节省更多资金。

    一些额外的好处包括:

    • 能够使用Web API或SMTP发送电子邮件。Web API速度更快,包括用于管理用户取消订阅、管理IP、模板电子邮件等的功能。
    • 通过域和链接自定义提高送达率以命中用户收件箱,无论是从共享IP池还是从专用IP发送。
    • 使用我们的自定义SPF和DKIM记录创建消除域欺骗和网络钓鱼电子邮件。
    • 受益于通过我们安全、分布式和冗余数据中心的持续邮件流。
    • 实时和可搜索的日志。

    创建SendGrid帐户和API密钥

    您需要做的第一件事是创建一个SendGrid帐户并生成您的API密钥。请按照以下步骤操作。

    第1步

    首先,在SendGrid.com注册免费试用。然后通过单击您收到的确认电子邮件来验证您的帐户。

    SendGrid确认电子邮件

    SendGrid确认电子邮件

    第2步

    进入后,我们强烈建议您设置两因子身份验证。电子邮件传递和路由非常重要,您最不希望有人入侵您的帐户。这为您的帐户增加了一层额外的保护。您可以在“Settings”→“Two-Factor Authentication”下执行此操作。

    他们为您提供了两种选择:Authy App(推荐)或短信(SMS)。

    SendGrid两因子身份验证

    SendGrid两因子身份验证

    第3步

    接下来,您需要生成您的SendGrid API密钥。点击进入“Settings”→“API Keys”。然后单击“Create API Key”。

    SendGrid创建API密钥

    SendGrid创建API密钥

    第4步

    为您的API取一个您可以识别的名称。这可以是任何东西。选择“Full Access”,然后单击“Create & View”。

    SendGrid创建API密钥

    SendGrid创建API密钥

    您将需要复制您的API密钥并将其保存在安全的地方,因为他们不会再次向您显示它。您将需要它来配置下面的插件。

    SendGrid API密钥

    SendGrid API密钥

    如何使用Post SMTP插件配置SendGrid

    我们建议使用流行的免费Post SMTP插件配置SendGrid 。也许您已经在当前设置中使用了此插件,因此将其切换到SendGrid应该很容易。

    Post SMTP插件

    Post SMTP插件

    Post SMTP插件会定期更新并支持通过SendGrid的SMTP中继以及SendGrid的Web API发送。它目前拥有100,000多个活跃安装。

    您可以从WordPress插件库下载它,也可以在WordPress仪表盘中的“插件”→“安装插件”下搜索它。

    以下是您可能想要使用Web API方法与SMTP的几个原因:

    • SMTP连接有多个故障点。
    • Web API方法通常比SMTP更快,延迟更少。
    • 与使用SMTP的标准凭证方法相比,Web API使用API密钥增加了额外的安全层
    • 有时WordPress主机会在端口 25、465和587上阻止与SMTP的出站连接。或者他们甚至可能根本不支持SMTP。使用Web API方法,您不必担心这一点。
    • 替换默认的wp_mail函数以发送电子邮件。

    第1步

    安装插件后,单击“Post SMTP”→“Start the Wizard”。

    Post SMTP向导

    Post SMTP向导

    第2步

    输入您想要“send mail as”的电子邮件地址和名称。这是用户从您的网站收到电子邮件时会看到的内容。然后点击“Next”。

    Post SMTP发件人详细信息

    Post SMTP发件人详细信息

    第3步

    我们将使用SendGrid的API,而不是SMTP。但是,如果API出现任何问题,将来拥有SMTP服务器将是一个后备。所以输入SendGrid的SMTP服务器地址,即:smtp.sendgrid.net。然后点击“Next”。

    Post SMTP外发邮件服务器主机名

    Post SMTP外发邮件服务器主机名

    第4步

    选择“SendGrid API”,然后单击“Next”。

    SendGrid API身份验证

    SendGrid API身份验证

    第5步

    现在回到Post SMTP Setup,粘贴您之前生成的SendGrid API密钥,然后单击“Next”。

    Post SMTP设置SendGrid API密钥

    Post SMTP设置SendGrid API密钥

    第6步

    然后,您可以选择在电子邮件未能送达时收到通知的方式。电子邮件是默认且最简单的选项。Post SMTP甚至有一个Slack选项。然后点击“Next”。

    Post SMTP电子邮件通知

    Post SMTP电子邮件通知

    第7步

    然后,您可以发送测试电子邮件以确保一切正常。在“Actions”菜单下,单击“Send a Test Email”。

    Post SMTP测试邮件

    Post SMTP测试邮件

    输入您要向其发送测试的收件人电子邮件地址,然后单击“Next”。如果一切正常,您将看到“Success”消息。

    Post SMTP测试电子邮件成功

    Post SMTP测试电子邮件成功

    就是这样!来自您的WordPress站点的所有电子邮件现在都将通过SendGrid的邮件服务器发送出去。请务必检查您的收件箱和垃圾邮件文件夹,以确保测试电子邮件通过。您还可以检查SendGrid活动提要

    SendGrid活动提要

    SendGrid活动提要

    第8步

    然后您应该跳到下面的部分来配置您的SendGrid域身份验证

    配置SendGrid域身份验证

    配置您的SendGrid域身份验证将通过向收件箱提供商证明您拥有从中发送的域来提高可传递性。否则,您的电子邮件可能最终会出现在垃圾邮件文件夹中。

    第1步

    在SendGrid仪表盘中,单击进入“Settings”→“Sender Authentication”。在域身份验证部分下,单击“Get Started”。

    SendGrid域认证

    SendGrid域认证

    第2步

    选择您正在使用的DNS主机。然后点击“Next”。

    DNS主机

    DNS主机

    第3步

    输入您要发送的域。然后,您可以选择您喜欢的安全类型。默认和推荐的选项是“Use automated security”。启用后,SendGrid将自动轮换您的DKIM密钥,以便它们不会被破坏。然后点击“Next”。

    SendGrid域发送自

    SendGrid域发送自

    第4步

    然后您需要添加DNS记录,以便您的电子邮件指向SendGrid。您可以在您的域注册商或第三方DNS提供商处执行此操作。它们需要三个CNAME记录。如果您需要这方面的帮助,您可以随时向您的提供商寻求帮助。

    添加它们后,选中“I’ve added these records”框,然后单击“Verify”。注意:添加DNS记录后,可能需要一段时间才能传播。大多数只需要几分钟,但可能需要长达24小时。

    SendGrid DNS记录

    SendGrid DNS记录

    然后您应该会看到“It worked!” 域验证完成时的消息。

    SendGrid已验证

    SendGrid已验证

    您现在应该已经准备好发送电子邮件了!请记住,上面的插件替换了默认的wp_mail函数。这意味着从您的站点发出的所有电子邮件现在都将通过SendGrid路由。