我想要的是宣布原始评论海报,当有人对他的评论做出回应时,如何使用触发器做到这一点有点模糊。
有没有人这样做过,或者有其他方法可以做到这一点吗?
2 回答
我不确定如何使用核心触发器模块来做到这一点,但这绝对可以使用规则模块来完成(假设 Drupal 6...不确定 Drupal 7 版本的规则有任何问题)。
下载并安装规则
导航到
admin/rules/trigger/add
创建新规则,将其命名为您喜欢的任何名称,然后在“事件”下拉列表下,选择“保存新评论后”并单击“保存”单击“添加条件”链接,选择“执行自定义 PHP 代码”。在 PHP 代码区域中,添加以下内容,然后单击保存:
if ($comment->pid != 0) { return TRUE; } else { return FALSE; }
单击“添加操作”并选择“按 ID 加载评论”。在评论 id字段中添加:
<?php echo $comment->pid; ?>
并单击保存再次单击“添加操作”并选择“加载用户帐户”。在用户 ID字段中添加:
<?php echo $comment_loaded->uid; ?>
并单击保存再次单击“添加操作”,然后选择“向任意邮件地址发送邮件”。在收件人字段中添加:
<?php echo $user_loaded->mail; ?>
并填写您喜欢自定义电子邮件的其他字段。
现在,每当回复评论时,都会向“回复”评论作者发送一封电子邮件。
对于 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" : [ "" ]
}
}
] } }