smtp-yalv

本博客托管在阿里云服务器上,之前一直没有设置评论自动邮件提醒功能。为了更快的与访客互动,提高访客的博客体验,现开通了邮件提醒功能,记录一下过程。

此次使用的是插件:Easy WP SMTP
SMTP 服务商:阿里云企业邮

第一步:修改 function.php 文件

修改Wordpress主题文件夹下的 function.php 文件,在?>之前添加如下代码(示范代码来源见注释,可自行修改)

/* comment_mail_notify v1.0 by willin kan. (所有回复都发邮件) */
function comment_mail_notify($comment_id) {
  $comment = get_comment($comment_id);
  $parent_id = $comment->comment_parent ? $comment->comment_parent : '';
  $spam_confirmed = $comment->comment_approved;
  if (($parent_id != '') && ($spam_confirmed != 'spam')) {
    $wp_email = 'no-reply@' . preg_replace('#^www.#', '', strtolower($_SERVER['SERVER_NAME'])); //e-mail 发出点, no-reply 可改为可用的 e-mail.
    $to = trim(get_comment($parent_id)->comment_author_email);
    $subject = '您在 [' . get_option("blogname") . '] 的留言有了回复';
    $message = '
    <div style="background-color:#eef2fa; border:1px solid #d8e3e8; color:#111; padding:0 15px; -moz-border-radius:5px; -webkit-border-radius:5px; -khtml-border-radius:5px;">
      <p>' . trim(get_comment($parent_id)->comment_author) . ', 您好!</p>
      <p>您曾在《' . get_the_title($comment->comment_post_ID) . '》的留言:<br />'
       . trim(get_comment($parent_id)->comment_content) . '</p>
      <p>' . trim($comment->comment_author) . ' 给您的回复:<br />'
       . trim($comment->comment_content) . '<br /></p>
      <p>您可以点击<a href="' . htmlspecialchars(get_comment_link($parent_id)) . '"> 查看回复完整內容<br /></p>
      <p>欢迎再度光临 <a href="' . get_option('home') . '">' . get_option('blogname') . '</p>
      <p>祝您生活愉快!</p>
      <p>(此邮件由系统自动发送,请勿回复.)</p>
    </div>';
      $from = "From: \"" . get_option('blogname') . "\" <$wp_email>";
      $headers = "$from\nContent-Type: text/html; charset=" . get_option('blog_charset') . "\n";
      wp_mail( $to, $subject, $message, $headers );
  }
}
add_action('comment_post', 'comment_mail_notify');
// -- END ----------------------------------------

配置 Easy WP SMTP 插件

打开博客后台,搜索 Easy WP SMTP插件,并启用。
设置如图:
yalv-smtp-setting
注意:
1. 阿里云与126等邮箱需要from email addresssmtp username一致。
2. 确保,邮箱开启 smtp ,阿里云邮箱自动开启。
3. 设置完成后,可以自行测试邮件是否能顺利发出。
yalv-smtp-test