通常在 WordPress 站点开发中,我们为了增强网站用户的粘度会开启评论系统,但是管理员回复了访客的评论,访客却不能立即知道,这样就降低了网站开启评论系统的效果。今天小编就来教大家如何来给空间不支持 mai() 函数的 WordPress 站点增加评论回复邮件提醒的方法,为什么说是给空间不支持 mai() 函数的 WordPress 站点增加评论回复邮件提醒的方法呢?因为小编这次是使用 SMTP 的方式来发邮件的, 下面上代码:
一、让 WordPress 支持 SMTP 方式来发送邮件。
//smtp add_action('phpmailer_init', 'mail_smtp'); function mail_smtp( $phpmailer ) { $phpmailer->FromName = '薇晓朵 (v7v3)'; //发信人名称 $phpmailer->Host = 'smtp.exmail.qq.com'; //smtp 服务器 $phpmailer->Port = 465; //端口 $phpmailer->Username = 'admin@weixiaoduo.com';//邮箱帐号 $phpmailer->Password = '********';//邮箱密码 $phpmailer->From = 'admin@weixiaoduo.com'; //邮箱帐号 $phpmailer->SMTPAuth = true; $phpmailer->SMTPSecure = 'ssl'; //tls or ssl(port=25 留空,465 为 ssl) $phpmailer->IsSMTP(); }
二、让 WordPress 评论后回复自动发送回复邮件。
//评论回复邮件 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 = 'webmaster@' . preg_replace('#^www.#', '', strtolower($_SERVER['SERVER_NAME'])); $to = trim(get_comment($parent_id)->comment_author_email); $subject = '你在 [' . get_option("blogname") . '] 的留言有了回应'; $message = ' <table border="1" cellpadding="0" cellspacing="0" style="border-collapse: collapse; border-style: solid; border-width: 1;" bordercolor="#85C1DF" width="700" height="251" id="AutoNumber1" align="center"> <tr> <td width="520" height="28" bgcolor="#F5F9FB"><font color="#1A65B6" style="font-size:14px"> <b> 留言回复通知 | <a href="http://www.weixiaoduo.com" targe="blank">v7v3(薇晓朵)</a></b></font></td> </tr> <tr> <td width="800" height="210" bgcolor="#FFffff" valign="top" style=" padding:8px;"> <span ><strong >' . trim(get_comment($parent_id)->comment_author) . '</strong>, 你好!</span> <p> <span > 你曾在 《' . get_the_title($comment->comment_post_ID) . '》 的留言:<br /> --->' . trim(get_comment($parent_id)->comment_content) . '<br /><br /> ' . trim($comment->comment_author) . ' 给你的回复:<br /> --->' . trim($comment->comment_content) . '</span></p> <p > <Strong> 你可以点击 <a href="'%20.%20htmlspecialchars(get_comment_link($parent_id))%20.%20'"> 查看回复完整内容</a></Strong></p> <p><span > <strong> 感谢你对 <a href="'%20.%20get_option('home')%20.%20'" target="_blank">' . get_option('blogname') . '</a> 的关注,欢迎<a href="http://list.qq.com/cgi-bin/qf_invite?id=3077e5391b4997f56a6854122b0c351be607d83c3ebf649b" target="_blank"> 订阅本站</a></strong>!</p> <p> 更多内容请:<a href="https://www.weixiaoduo.com/group/" target="_blank"> 本站 Q 群</a> | <a href="http://wpa.qq.com/msgrd?v=3&uin=1176882511&site=v7v3&menu=yes"> 联系站长</a> | <a href="mailto:v7v7@qq.com"> 投稿</a> | <a href="https://www.weixiaoduo.com/tougao/"> 投稿须知</a> | <a href="https://www.weixiaoduo.com/about/"> 关于我们</a> | <a href="https://www.weixiaoduo.com/contact/"> 联系我们</a></p></td> </tr> <tr> <td width="800" height="16" bgcolor="#85C1DF" bordercolor="#008000"><div align="center"><font color="#fff"><a href="http://www.weixiaoduo.com"> 薇晓朵 (www.weixiaoduo.com)</a></font></div></td> </tr> </table>'; $from = "From: "" . get_option('blogname') . "" <$wp_email>"; $headers = "$from Content-Type: text/html; charset=" . get_option('blog_charset') . " "; wp_mail( $to, $subject, $message, $headers ); } } add_action('comment_post', 'comment_mail_notify');
以上代码加入到 functions.php 里调用即可。