【问题标题】:How to send an email when a user responds to a comment当用户回复评论时如何发送电子邮件
【发布时间】:2011-04-07 12:09:50
【问题描述】:

我想要的是当有人回应他的评论时宣布原始评论海报 如何使用触发器执行此操作有点模糊。
有没有人这样做过,或者有其他方法可以做到这一点吗?

【问题讨论】:

    标签: email drupal drupal-comments


    【解决方案1】:

    我不确定如何使用核心触发器模块来执行此操作,但这绝对可以使用Rules Module 完成(假设 Drupal 6...不确定 Drupal 7 版本的规则有任何问题)。

    1. 下载安装Rules

    2. 导航到admin/rules/trigger/add 以创建新规则,将其命名为您喜欢的任意名称,然后在事件下拉菜单下,选择“保存新评论后”并点击保存

    3. 单击“添加条件”链接选择“执行自定义 PHP 代码”。在 PHP 代码区,添加以下内容然后点击保存:

      if ($comment->pid != 0) { return TRUE; } else { return FALSE; }

    4. 单击“添加操作”并选择“按 ID 加载评论”。在 Comment id 字段中添加:<?php echo $comment->pid; ?> 并点击保存

    5. 再次单击“添加操作”并选择“加载用户帐户”。在 User id 字段中添加:<?php echo $comment_loaded->uid; ?> 并点击保存

    6. 再次单击“添加操作”并选择“向任意邮件地址发送邮件”。在收件人字段中添加:<?php echo $user_loaded->mail; ?> 并填写您喜欢自定义电子邮件的其他字段。

    现在,每当回复评论时,都会向“回复”评论作者发送一封电子邮件。

    【讨论】:

    • 非常感谢。它对我的要求进行了一些更改,但它仍然对我有很大帮助。再次感谢。
    【解决方案2】:

    对于 Drupal 7 网站
    以下是您可以根据规则导入并根据您的要求更新主题和正文的代码:

    { "rules_send_reply_notice_for_comments" : {
    "LABEL" : "Send reply notice for comments",
    "PLUGIN" : "reaction rule",
    "OWNER" : "rules",
    "TAGS" : [ "comments" ],
    "REQUIRES" : [ "rules", "comment" ],
    "ON" : { "comment_insert" : [] },
    "IF" : [ { "NOT data_is_empty" : { "data" : [ "comment:parent" ] } } ],
    "DO" : [
      { "mail" : {
          "to" : [ "comment:parent:mail" ],
          "subject" : "SUBJECT",
          "message" : "Here is the message you want to send [comment:body] regards Gaurav",
          "from" : "YOUR EMAIL ADDRESS",
          "language" : [ "" ]
        }
      }
    ]  } }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2012-02-02
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-03-19
      • 1970-01-01
      • 2018-03-24
      相关资源
      最近更新 更多