3种不同的邮件通知

时间:2011-11-13 作者:EyesX

我正在构建一个小型跟踪器,需要发送有关特定操作的邮件通知。

深思熟虑的通知:

发布新票证时,管理员会收到通知电子邮件。更新票证时,作者会收到通知电子邮件。发布票证时,作者会收到确认邮件。每封通知电子邮件都有不同的内容。我有这三个通知中的一个要处理,即作者在更新票证时收到通知的通知(代码如下)。另外两个我想不出来。

在我的跟踪器中发布的一些背景信息。过帐以前端形式进行。如果用户已登录,则其用户详细信息将用作票证作者元。如果用户未登录,则名称和电子邮件将保存为自定义字段。

//**************************************************
// Send mail to user when a ticket is updated
//**************************************************
function trac_authorEditNotification($post_id) {
   $post = get_post($post_id);
   $author = get_userdata($post->post_author);

   if ($author->ID == \'2\') {
       $message = "Hej ".get_post_meta($post->ID, \'ticket_poster\', true).",\\nDin rapport \'".$post->post_title."\' har just uppdaterats.\\n\\nDu kan besöka den uppdaterade rapporten på: ".get_permalink( $post->ID )."\\n\\nMvh\\nTeamet";
       wp_mail(get_post_meta($post->ID, \'ticket_poster_mail\', true), "[Trac] Rapport uppdaterad (#".$post->ID.")", $message);
   } else {
       $message = "Hej ".$author->display_name.",\\nDin rapport \'".$post->post_title."\' har just uppdaterats.\\n\\nDu kan besöka den uppdaterade rapporten på: ".get_permalink( $post->ID )."\\n\\nMvh\\nTeamet";
       wp_mail($author->user_email, "[Trac] Rapport uppdaterad (#".$post->ID.")", $message);
   }
}
add_action(\'edit_post\', \'trac_authorEditNotification\');
基本上,我需要的是类似于上述代码的其他两个通知。我试过很多动作挂钩,但似乎都没用。我没有收到任何电子邮件,或者触发了多个挂钩,结果我收到了多达多封电子邮件。

建议?

1 个回复
最合适的回答,由SO网友:Johannes Pille 整理而成

除非出于某种原因需要将其硬编码到主题中或完全控制自己的插件,否则可以使用现有的Peter\'s Collaboration Emails 插件。

如果安装插件不是一个选项,我建议修改上述内容或分别借用其部分代码。它可以做你需要的所有事情。

另一方面,它还可以轻松地适应一个或多个自定义帖子类型。

结束

相关推荐