支持的 Typecho 版本 >=1.0

PHP 推荐版本 PHP7-PHP7.4 ,在 PHP8.1 测试过可以运行,但官方有些接口仍然没有迁移到 PHP8,所以不推荐。

版权申明

1.插件原版本及作者相关信息保留在插件文件的作者信息下方

2.PHP Mailer 文件来自于 GitHub

3.转载或重制请保留作者信息

使用方法

1.下载插件,将插件上传到 /usr/plugins/ 目录下,修改主题模板comments.php文件,在评论form表单的适当位置添加name为receiveMail的选择框(checkbox),请注意:下方两种代码,你只能选择一个添加到主题模板文件,一般建议你选择默认接收邮件。如果您在插件设置中开启强制忽略用户选择,您可以跳过这一步。

  • 正常显示选择框:
    <input type="checkbox" name="receiveMail" id="receiveMail" value="yes" checked /> <label for="receiveMail" style="padding-left:8px;">当有人回复时接收邮件提醒</label>
  • 隐藏选择框(默认接受邮件):
    <input type="hidden" name="receiveMail" id="receiveMail" value="yes" />

2.后台启用相关插件

3.设置smtp服务器地址、邮箱地址、密码等信息

4.设置cron监控

将下面的代码设置成每 5 分钟运行一次即可(需要修改成自己的网址),可以使用 crontab 或者使用面板提供的定时任务功能。

curl -k "https://example.com/action/comment-to-mail?do=deliverMail&key=114514" >> ./log.txt

常见问题

1.Key是邮件任务执行密码,防止他人恶意执行任务消耗资源

2.下方任务执行地址就是说当你访问这个网址时,邮件任务才会执行,为了达到自动发送的效果,我们设置cron或者网址监控,每隔一段时间让远程服务器代替你访问任务执行网址

3.执行验证是用来调试和应对特殊环境,一般不要勾选!

4.可以清理邮件发送信息

5.QQ邮箱smtp密码需要在邮箱网页端获取,具体配置信息可以参考度娘

6.测试普通QQ邮箱可以正常发送,但可能由于腾讯反垃圾邮件逻辑,用户不能正常接受邮件,建议大家使用QQ域名邮箱,如果你没有域名邮箱,可以通过邮件联系我,或者直接在下方留言

7.本插件仅支持typecho1.0及之后版本

8.如果出现 邮件发送失败:SMTP connect() failed. (PHP>=5.6)可以参考这篇博文 https://9sb.org/45

写在最后


在反馈任何问题以前,请您认真查看:提问的艺术

How-To-Ask-Questions-The-Smart-Way


WarHut修复版

  1. 修复邮件模板强制携带作者信息
  2. 修复更新指向问题,直接指向github版本
  3. 修复一些小bug

下载地址:https://warhut.lanzoul.com/i9gYK1ic6eli

github:https://github.com/OuOumm/CommentToMail

最后修改:2024 年 05 月 23 日

感谢看完,可以点个赞~请作者喝杯咖啡~ヾ(◍°∇°◍)ノ゙❤