WordPress 有人回复时邮件通知的实现方法 SAE 移植版

前端之家收集整理的这篇文章主要介绍了WordPress 有人回复时邮件通知的实现方法 SAE 移植版前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

1,先配置一下您的SMTP账户的用户名和密码。 2,将下面的内容粘贴到当前主题的 functions.PHP 中即可,注意别破坏了原来的结构就行。(或者直接建一个文件,将代码拷贝进去,然后在 functions.PHP 中引用该文件即可。) <div class="msgborder" id="PHPcode3"> <?php /* Email Me With The Replay For SAE Usage:将此段代码粘贴到当前主题的 functions.php 文件中即可。 或者将此文件放进主题目录,在 functions.php 中包含此文件 基于 comment_mail_notify v1.0 by willin kan. http://kan.willin.org/?p=1295(已失效) changelist 2012-03-29 version 0.1 2012-04-29 version 0.2 edit $subject to this code $subject = '您的评论 ' . mb_substr(strip_tags(get_comment($parent_id)->comment_content),10,'utf-8') . ' 有了回应 - ' . get_option("blogname"); @author IT不倒翁,willin kan @copyright (C) 2011,2012 Just Use It! @link yungbo.com @version 0.2 / function comment_mail_notify($comment_id) { //换行标志 $lineBreak = "\n"; //缩进标志 $tabBreak = "\t"; $admin_notify = '1'; // are you willing to receive the email? 1 is yes. $admin_email = get_bloginfo('admin_email'); // you can change $admin_email to your e-mail optionaly. $comment = get_comment($comment_id); $comment_author_email = trim($comment->comment_author_email); $parent_id = $comment->comment_parent ? $comment->comment_parent : ''; global $wpdb; if ($wpdb->query("Describe {$wpdb->comments} comment_mail_notify") == '') $wpdb->query("ALTER TABLE {$wpdb->comments} ADD COLUMN comment_mail_notify TINYINT NOT NULL DEFAULT 0;"); if (($comment_author_email != $admin_email && isset($_POST['comment_mail_notify'])) || ($comment_author_email == $admin_email && $admin_notify == '1')) $wpdb->query("UPDATE {$wpdb->comments} SET comment_mail_notify='1' WHERE comment_ID='$comment_id'"); $notify = $parent_id ? get_comment($parent_id)->comment_mail_notify : '0'; $spam_confirmed = $comment->comment_approved; if ($parent_id != '' && $spam_confirmed != 'spam' && $notify == '1') { $wp_email = 'no-reply@' . preg_replace('#^www.#','',strtolower($_SERVER['SERVER_NAME'])); // e-mail $to = trim(get_comment($parent_id)->comment_author_email); $subject = '您的评论 ' . mb_substr(strip_tags(get_comment($parent_id)->comment_content),'utf-8') . ' 有了回应 - ' . get_option("blogname"); //邮件主体内容 //估计新浪考虑到安全问题,全部用 htmlspecialchars() 过滤了,所以不要使用 html 标记 $message = '您好,' . trim(get_comment($parent_id)->comment_author) . $lineBreak; $message .= '您曾在 ' . get_option("blogname") . ' 留言:' . $lineBreak; $message .= $tabBreak . trim(get_comment($parent_id)->comment_content) . $lineBreak; $message .= trim($comment->comment_author) . ' 回复了您:' . $lineBreak; $message .= $tabBreak . trim($comment->comment_content) . $lineBreak; $message .= '您可以点击 ' . get_comment_link($parent_id) . ' 查看具体情况' . $lineBreak; $message .= $lineBreak; $message .= '(系统邮件,请不要直接回复)' . $lineBreak; $message .= get_option('blogname') . $lineBreak; $message .= home_url() . $lineBreak; /SAE 配置位置/ $SAETo = $to; $SAESubject = $subject; $SAEMessage = $message; $SAESMTPUser = '';//SMTP邮箱 $SAESMTPPass = '';//SMTP密码 $mail = new SAEMail(); $result = $mail->quickSend($SAETo,$SAESubject,$SAEMessage,$SAESMTPUser,$SAESMTPPass); // if ($result === false) // var_dump($mail->errno(),$mail->errmsg()); } } add_action('comment_post','comment_mail_notify'); / Auto checked / function add_checkBox() { echo '<label for="comment_mail_notify">有人回复我时邮件通知我'; } add_action('comment_form','add_checkBox');

猜你在找的wordpress相关文章