A-A+
WordPress无插件代码实现评论回复邮件通知
在 wordpress 后台的 设置>讨论 的地方有关于 wordpress 博客系统的评论功能的设置,其中有一项是关于 “何时发送电子邮件”的设置,一共有两项选择 (1),有人发表评论时 (2)有评论等待审核时,这两项都是默 认选中的,也就是当有访客在博客上进行留言时,系统会发通知到管理员的邮箱当中,请注意,这里是发送到 管理员的邮箱里面,跟我们所讨论的“wordpress无插件代码实现评论回复邮件通知”的功能是不一样的,我 们这里要讨论的是给访客进行回复,也就是访客在博客上进行提问问题,我们在进行回复时,访客会第一时间 通过邮箱接受到回复的内容。
这对于网站的互访很有必要,还可以提高访客的黏度,所以这个功能得赶紧给实现了,要实现这个功能,得需 要空间支持 mail() 函数,一般的 linux 空间都是支持这个 mail() 函数的。下面的源码就是给访客发送邮件 的一个函数了,将其放到 wordpress 主题下面的 functions.php 中就可以了,有一点要说明的是,其实现在 许多主题都已经给加上这段代码了,在使用之前,可以先检查一下 functions.php 中有没有下面的代码:
//comment_mail_notify(所有的回复都会发邮件通知) function comment_mail_notify($comment_id) { $comment = get_comment($comment_id); $parent_id = $comment->comment_parent ? $comment->commen t_parent : ''; $spam_confirmed = $comment->comment_approved; if (($parent_id != '') && ($spam_confirmed != 'spam')) { $wp_email = 'no-reply@' . preg_replace('#^www\.#', '', st rtolower($_SERVER ['SERVER_NAME']));//发件人e-mail地址 $to = trim(get_comment($parent_id)->comment_author_email); $subject = '您在['.get_option("blogname").']的留言有了回复'; $message = ' <div style="background-color: #eef2fa; border: 1px soli<br /><br /> d #d8e3e8; color: #111; padding: 0 15px; <br /><br /> -moz-border-radius: 5px; -webkit-border-radius: 5px; -kh<br /><br /> tml-border-radius: 5px;"> '.trim(get_comment($parent_id)->comment_autho r).', 您好! 这是您在《'.get_the_title($comment->comment_pos t_ID).'》中的留言: ' .trim(get_comment($parent_id)->comment_conten t).' 以下是'.trim($comment->comment_author).' 给您的 回复: ' .trim($comment->comment_content).' 您可以<a href="' . htmlspecialchars(get_comme<br /><br /> nt_link($parent_id)) . '">点击这里查看回复 的完整内容.</a> 欢迎再度光临 <a href="' . get_option('hom<br /><br /> e') . '">' . get_option('blogname') . '</a> (注:此邮件由系统自动发出,请勿回复!) </div> '; $from = "From: \"" . get_option('blognam e') . "\" <$wp_email>"; $headers = "$from\nContent-Type: text/html ; charset=" . get_option('blog_charset') . "\n"; wp_mail( $to, $subject, $message, $headers ); //echo 'mail to ', $to, ' ' , $subjec t, $message; // for testing } } add_action('comment_post', 'comment_mail_no tify');
博主这里有很多关于WP的知识,有时间要建一个WP博客学习学习,以后会多些关注贵博。
比较喜欢用多说。
阿。认真看了下,才看清原来是给访客发送的啊。好,
给管理员发送邮件不用操作的,wordpress默认就有了。
嗯,但是有的服务器不支持邮件服务。得用插件。
恩,看到php代码头大了.
刚才我才设置完邮箱。
戳
恩,然后你刚刚评论我blog,就收到邮件了呵呵。
这么还挺方便。不过我yeah.net端口645用不了,最后换到25用非加密才成功。多交流
想要回复邮件样式漂亮点的话还得用css美化下,不过你这个看上去还好
这是默认主题的CSS样式,感觉还蛮不错的说!