悦风

CommentToMail V4.1 使用教程
CommentToMail作为一款老牌Typecho邮件通知评论的插件,也有很多分支。Github 项目链接
扫描右侧二维码阅读全文
08
2017/09

CommentToMail V4.1 使用教程

CommentToMail作为一款老牌Typecho邮件通知评论的插件,也有很多分支。
Github 项目链接

更新日志

V4.0.0(2017.09.08)

1.基于原V3.1.0版本重新编写
2.更新了PHP Mailer版本
3.优化了使用SMTP发信的证书认证(QQ邮箱证书加密级别太低)
4.修复使用QQ邮箱(非企业邮箱)的时候会发现邮件发不出去的BUG
5.将异步触发更换为网址监控运行

V4.1.1(2017.12.21)

1.更新插件使用说明
2.优化通知模板UI
3.增添一个解决DT:SPM CODE 544错误的方案
4.更多细节优化

V4.1.2(2018.04.30)

修复数据库导入时偶发性的“Database Query Error” (感谢 权那他 的指正)

v4.2.2(2019.08.37)

修复通过邮件审核后未发送邮件的设计疏忽

版权申明

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" />

下面我以handsome主题作为例子:
IMG_0301.PNG
选中第二个文件夹,找到comments.php
IMG_0302.PNG
定位到下图所示位置:
IMG_0285.JPG
在上图主题文件评论框的input下方插入代码即可(任意一个input都行,不过为了方便,可以添加在邮件那行下方),不过每次主题更新后可能需要重新设置。
(请注意:Handsome主题自4.1.x版本开始,增添对本插件的支持,无需再次修改文件!)
IMG_0303.PNG
设置完如上图所示,保存好文件!到这一步,你已经成功了一半。
2.后台启用相关插件
3.设置smtp服务器地址、邮箱地址、密码等信息
4.设置cron监控(如果你觉得麻烦或者不会可以添加网址监控!具体步骤参照步骤5)
监控的网址就是插件设置后台的任务执行地址加上你自己设置的Key(注意,任务执行链接不包含【 】,如:http://baidu.com/index.php/action/comment-to-mail?do=deliverMail&key=123456
IMG_0281.PNG
5.网址监控:在阿里/360网址监控加上你的执行网址就可以发信!在这里我用360网址监控作为演示。(此步骤可代替步骤4)
IMG_0282.PNG
设置好了会显示如下信息:
IMG_0283.PNG
正确设置后,就可以正常发信了。360默认每10分钟触发一次,也就是每10分钟将之前的邮件发送一次的意思。
IMG_0287.PNG

如果你正常设置本插件,但在发信时出现DT:SPM CODE 544错误,你可以到CommentToMail目录下找到Action.php,定位到316行,去除代码的注释。
(此操作仅针对出现错误的用户,如果你发信正常,请不要去除注释!)
IMG_0288.PNG

常见问题

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

写在最后

1.使用方法非常重要!!!建议您仔细阅读上方说明。
2.希望您使用本插件后,可以在下方评论,让更多的人看见/使用本插件

下载链接

最后修改:2019 年 08 月 31 日 09 : 12 PM
如果觉得我的文章对你有用,请随意赞赏

118 条评论

  1. joy

    博主大大handsome主题是不是不用修改东西

    1. Ricardo.Li
      @joy

      是的

  2. xing-chuan

    数据库本来是没有 log 这张表的,是插件自己创建的?我去翻了一下,没有这张表

    1. Ricardo.Li
      @xing-chuan

      插件创立的,应该就日志和待发邮件

  3. Merey

    你好 我使用配置完全正确,但是有一个问题 就是回复不会触发,这个怎么解决?

    1. Ricardo.Li
      @Merey

      是需要网址监控触发的

  4. roger

    模板

  5. 鸟不拉屎

    博主,按照你的邮件教程,遇到一个问题
    设置好邮件配置信息后,用测试发邮件,点击发送之后,一直卡着了
    导致博客都访问不了了(ó﹏ò。)
    求助呀

    1. Uniartisan
      @鸟不拉屎

      插件出错了禁用插件即可。

      1. AUK CL
        @Uniartisan

        请问下禁用插件之后应该如何处理?我重新设置了两次都会造成无法访问博客

        1. Uniartisan
          @AUK CL

          禁用插件,实在不行重启服务器。

          1. mikusa
            @Uniartisan

            遇到了同样的问题…

  6. 官仁博客

    博主你好,安装之后能正常收发,但是近日发现个小问题,就是别人评论之后,邮件会重复发送。请参看截图
    别人只评论了一条,但是邮件反复推送这一条信息。。。不知道什么缘故。

    1. 官仁博客
      @官仁博客

      我回复他人的有时候也是两三条一样的邮件推送过去

      1. Uniartisan
        @官仁博客

        我这边没出现这个问题,不好复现和调试,感觉像监控导致的问题。你关闭监控,手动执行网址看有没有问题吧。ヾ(≧∇≦*)ゝ
        我本人对PHP也不是太熟悉,高考完再继续学习。

        1. 官仁博客
          @Uniartisan

          你回复我这消息,wo都没收到邮件~~。我把监控频率调成15分钟了,改了下KEY,目前还不知道是否会重复发送。

          1. Uniartisan
            @官仁博客

            我自己博客没有开启邮件通知。因为现在用的服务器环境问题不支持发信。

  7. 权那他

    一个小bug提醒你,建议把 Plugin.php 里第254行的 改成 'sent' => '0' 不然邮箱人会出现数据库错误

    1. Uniartisan
      @权那他

      谢谢! 最近准备高考所以没有时间修复。
      你这节省了我不少时间呢

      1. 权那他
        @Uniartisan

        ୧(๑•̀⌄•́๑)૭ 加油,我马上也高三了。OωO

        1. Uniartisan
          @权那他

          已经在更新日志注明,V4.1.2

  8. SanCi

    博主 审核 通过留言,这个插件并不会发送邮件,一定要回复留言才会发送邮件。
    个人认为 审核 通过也应该发送邮件, 这样会更完美。

    1. SanCi
      @SanCi

      通过 审核 就能在评论栏显示留言,并不一定需要回复,这种情况也应该发送邮件告知留言者。

      1. FSpark
        @SanCi

        这个问题已解决咯 ୧(๑•̀⌄•́๑)૭

      2. Uniartisan
        @SanCi

        实际上这个插件是通过评论时写入数据库,再通过队列执行的,你这个可能不太好实现,要获取typecho的评论审核状态,可能要改typecho本身的代码。

        1. FSpark
          @Uniartisan

          不需要哦,Typecho本身提供了接口(ฅ´ω`ฅ)

发表评论