如何在WordPress中实现自定义评论回复邮件通知功能?
解释如何使用WordPress代码实现自定义评论回复邮件通知功能的技巧和最佳实践。
-
玖比肆 评论为了实现自定义评论回复邮件通知功能,您需要使用WordPress的“wp_mail”函数和一些自定义代码。以下是一个实现该功能的步骤:
1. 在主题的functions.php文件中添加以下代码:
```
function custom_comment_reply_mail_content($comment_id, $approved = false) {
$comment = get_comment($comment_id);
$post = get_post($comment->comment_post_ID);
$author = get_userdata($post->post_author);
$parent_comment = get_comment($comment->comment_parent);
$recipient = get_userdata($parent_comment->user_id);
if ($recipient->user_email) {
$comment_author = $comment->comment_author;
$comment_url = get_comment_link($comment_id);
$comment_date = get_comment_date('', $comment_id);
$comment_content = $comment->comment_content;
$post_title = $post->post_title;
$post_url = get_permalink($post->ID);
$subject = '您在文章“' . $post_title . '”中的评论收到了一条回复';
$message = '您在文章“' . $post_title . '”中的评论收到了一条回复:' . "nn" ;
$message .= $comment_content . "nn";
$message .= '您可以点击以下链接查看回复: ' . $comment_url . "nn";
$message .= '此邮件由系统自动发出,请勿回复。' . "nn";
wp_mail($recipient->user_email, $subject, $message);
}
}
add_action('comment_post', 'custom_comment_reply_mail_content', 10, 2);
```2. 解释这段代码:
- 第一行定义了一个函数custom_comment_reply_mail_content,它将在评论提交后被执行。
- 第二行获取了刚提交的评论的详细信息。
- 第三行获取了评论所在文章的详细信息。
- 第四行获取了文章作者的详细信息。
- 第五行获取了父评论的详细信息。
- 第六行获取了父评论作者的详细信息。
- 第七行检查父评论作者是否拥有电子邮件地址。
- 如果他们有电子邮件地址,则设置电子邮件主题和内容,用wp_mail函数将通知发送到他们的电子邮件地址。
- 最后,将此函数添加到评论提交后的操作中。3. 保存文件,刷新WordPress后台的页面。
现在,当有人在您的博客中回复评论时,原始评论者将收到电子邮件通知。请注意,此代码仅针对有电子邮件地址的用户发送通知。如果父评论作者没有电子邮件地址,则不会发送任何通知。
此外,您可以使用WP Mail SMTP插件来确保电子邮件正确发送,并且不会被列为垃圾邮件。
2023年 5月 11日 上午4:34
