GG资源网

如何在 WordPress 中设置电子邮件通知

事务性电子邮件是一次性发送到特定地址的消息,由用户操作触发。

虽然“事务性”这个词听起来并不那么令人兴奋,但实际上并没有那么复杂。 WordPress 中有很多例子:当用户在网站上注册时,他们会收到一封电子邮件,当有人对帖子发表评论时,管理员可能会收到一封电子邮件通知。 然后是用于密码恢复等的电子邮件通知。

在本周末 WordPress 项目中,我们将了解如何使用 wp_mail() 基于自定义用户操作发送简单电子邮件的功能。 具体来说,我们将看看如何通知作者他们的作品已经发表。

继续阅读,或使用以下链接跳转:

  • 介绍 wp_mail()
  • 发送 HTML 电子邮件
  • 常见的陷阱
  • 根据用户操作触发电子邮件

介绍 wp_mail()

很多人不知道 WordPress 有一个简单易用的发送电子邮件的功能。 这 wp_mail 功能允许您通过指定许多相关参数来灵活发送电子邮件,我们来看看。

  • $到
    收件人的电子邮件
  • $主题
    电子邮件主题
  • $消息
    电子邮件的消息
  • $标头
    邮件标题,由换行符分隔 (rn)
  • $附件
    要附加的文件或文件数组

只需指定前三个参数即可发送非常简单的文本电子邮件,这是一个简单的示例:

发送 HTML 电子邮件

可以通过切换电子邮件的内容类型来发送 HTML 电子邮件。 这可以通过 wp_mail_content_type 钩。 这是与上面相同的电子邮件的示例,但有一些额外的格式。 当然,这在您的 functions.php 文件中:

请注意,我们在发送电子邮件之前添加过滤器,然后立即将其删除。 我将在下一节中解释这一点。

常见的陷阱

根据我的经验,人们经常想知道两个问题 wp_mail(). 第一个是关于我们之前添加的那个 HTML 过滤器。 如果您将过滤器添加到您的 functions.php 文件或插件,电子邮件将始终使用 HTML 内容类型。

不幸的是,这与某些 WordPress 内部组件不匹配,并且密码重置电子邮件未正确发送。 每当您想发送 HTML 电子邮件时,请确保在之前添加过滤器并在之后立即将其删除,以便默认 WordPress 电子邮件继续运行。

如果您的服务器上未正确设置电子邮件功能,则会出现第二个问题。 这发生在某些主机上,但在 MAMP 和 XAMPP 等 localhost 环境中更常见。 WP Mail SMTP 插件可以帮助您。

这些插件允许您通过 SMTP 服务器发送电子邮件,例如您的 Gmail 帐户。 这在我多年来尝试过的所有本地和远程主机上都运行良好。

根据用户操作触发电子邮件

要发送交易电子邮件,我们需要采取一些措施。 正如我之前提到的,现在让我们看看如何在作者的作品发表时通知他们

publish_post 行动似乎很合适。 根据 WordPress 法典:

publish_post 是每当发布帖子时触发的操作,或者如果它被编辑并且状态更改为发布。

这是所有代码放在一起:

这里不应该有很多新代码。 让我解释一下它的作用:我已经定义了设置内容类型的函数,并且我已经将一个函数挂接到 publish_post 行动。 当触发此操作时,我会检查这确实是一篇文章(而不是页面或其他一些自定义文章类型)。 如果是帖子,我会继续发送电子邮件,仅此而已。

最后的想法

你可以在这里做更多的事情。 从基本的欢迎电子邮件到在特定类别中发布新帖子时的用户通知,选项无穷无尽。

要记住的一件事是,您的服务器很可能无法发送数百封电子邮件。 如果您想发送大量电子邮件,您应该与您的主机交谈,并可能考虑使用 Mailchimp 或 Madmimi API,否则您可能会被阻止。

标签:

由于网站搬家,部分链接失效,如无法下载,请联系站长!谢谢支持!
1. 带 [亲测] 说明源码已经被站长亲测过!
2. 下载后的源码请在24小时内删除,仅供学习用途!
3. 分享目的仅供大家学习和交流,请不要用于商业用途!
4. 本站资源售价只是赞助,收取费用仅维持本站的日常运营所需!
5. 本站所有资源来源于站长上传和网络,如有侵权请邮件联系站长!
6. 没带 [亲测] 代表站长时间紧促,站长会保持每天更新 [亲测] 源码 !
7. 盗版ripro用户购买ripro美化无担保,若设置不成功/不生效我们不支持退款!
8. 本站提供的源码、模板、插件等等其他资源,都不包含技术服务请大家谅解!
9. 如果你也有好源码或者教程,可以到审核区发布,分享有金币奖励和额外收入!
10.如果您购买了某个产品,而我们还没来得及更新,请联系站长或留言催更,谢谢理解 !
GG资源网 » 如何在 WordPress 中设置电子邮件通知

发表回复

CAPTCHAis initialing...