WordPress评论回复邮件通知附最新Windows主机回复评论发送邮件
WordPress评论回复邮件通知就是当别人回复了你在某一个Wordpress博客上的评论后,自动发送一封邮件到你的邮箱当中,并告诉你大概的评论内容和链接,以便你跟踪评论。
以前freehao123.com用的是国外的Linux虚拟空间,采用Wordpress架构,什么伪静态、回复邮件通知等功能都完全正常,怪不得别人说Linux是Wordpress运行的最好平台。
后来因为种种原因,将博客放在了国内。众所周知,国外的空间以Linux主机居多,而国内的各大主机商,基本上以Windows主机居多,我现在用的主机就是Windows主机。
换了空间后,麻烦就来了,首先是伪静态无法实现,后来花了我大量的时间和精力才搞定它。另一个致命的弱点就是运行在Windows主机上的Wordpress无法正常发送回复邮件通知。
其间也尝试过多种方法来实现Wordpress评论回复邮件通知,但是都是以失败而告终。没有回复评论邮件通知功能,不少人在QQ上向我反映这个问题,希望我可以加上这个功能。
恰好的免费资源部落的文章基本上也就是一些建站、空间使用类的文章,很多人是因为有问题才会留言,希望可以得到解答。所以,评论回复邮件通知功能实在非常重要。
不管你用的是Linux主机还是Windows主机,如果你发现你的Wordpress没有邮件发送和评论回复邮件通知功能,那么这篇文章将为你解决这个问题。特别是像我这样的Windows用户。
如果你对Wordpress美化和整合有兴趣,可以看看下面的免费Wordpress教程:
- 1、WordPress文章中添加上一篇、下一篇链接专题研究(你可以为你的WP分类、标签或者特定的类别来打造上一篇、下一篇功能)
- 2、WPZonBuilder专为Amazon.com联盟打造的WordPress插件(有兴趣做英文网站的朋友可以用这个插件实现自动博客)
- 3、WordPress整合问答程序Question2Answer:安装使用测评(这个程序可以完美整合到WP中,弥补WP在解决问题和用户讨论方面的不足)
WordPress评论回复邮件通知附最新Windows主机回复评论发送邮件
一、运行在Linux主机上的Wordpress无法发送评论回复邮件
1、一般来国外的主机空间以Linux居然,而Wordpress正是Linux平台运行的程序,对WP支持是最好的了。所以只要你的Wordpress安装在Linux主机上,邮件发送就不应该有问题。
2、Linux主机禁用了mail函数,关闭了openssl模块。这种情况比较少见,但是也有。测试自己用的主机是否禁用Wordpress使用到的mail()函数,最简单的方法是找回密码。
3、如果如下提示,就表示禁用了。这时候请直接联系人的主机商,叫他们帮你开通。
4、你的主机虽然支持mail函数,但是配置的环境比较差,邮件虽然可以发出去,但是很慢,而且经常还无法发送。这种情况经常见于一些便宜主机上。解决的办法是升级配置或者换主机。
二、运行在Windows主机上的Wordpress无法发送评论回复邮件
1、为什么windows主机不能使用邮件回复呢,因为它禁用了mail()函数,这使得所有邮件回复插件都不能用了。但是一般Windows主机会允许SMTP发信。
2、所以如果你正在使用Windows主机运行Wordpress,默认的是无法发送任何邮件的。我们要采用插件法来解决这个问题。
3、在网上搜索了一下,不少人和我一样遇到这种问题,由于插件冲突还有设置问题,至今还有不少人至今没有成功解决这个Win主机发邮件的问题
三、我的成功解决办法:Windows主机无法发送回复评论邮件
1、我要实现的效果是,当Wordpress有评论时自动发送一封邮件通知我。任何人回复任何人的评论都要发送一封通知邮件给被回复者的邮箱。不管是前台还是后台回复,都是成功发送评论回复邮件通知。
2、实现的方法:我目前用的插件是WP Thread Comment(嵌套回复插件),该插件已经有了回复邮件通知功能,但是因为Windows主机的原因,无法成功发送邮件。所以我需要用代码或者插件的方法启用这个功能。
3、成功的过程:经过无数次测试,最终我用Configure SMTP插件实现评论通知功能和回复评论邮件通知功能,但是有一个问题,就是前台回复评论可以成功发送邮件,而管理员后台回复评论则无法收到邮件。
4、最后我用到了另外一个插件Comment Reply Notification成功解决了后台回复评论发送邮件通知的问题。本以为同时启用两个评论回复邮件通知插件,在前台回复会出现两个邮件通知,但是经过我的测试后居然只收到一个。
5、也就是说Comment Reply Notification只支持后台回复评论邮件通知,前台回复则没有。当然也不一定是插件的问题,有可能是两个插件同时启用的问题。
1、解决这个问题的前提是:你的Wordpress已经有了回复评论发送邮件通知的功能,只不过因为是Windows禁用mail函数的问题,导致无法正常发送邮件。
2、一般地你安装了WP Thread Comment就有了回复评论邮件通知功能,在插件后台启用即可,当然还有其他的插件或者手动添加代码的方法,可以自己谷歌一下。
3、首先安装Configure SMTP插件,这里是Configure SMTP插件下载地址,还有官方网站:https://wordpress.org/extend/plugins/configure-smtp/
4、Configure SMTP插件设置。我使用QQ邮箱配置的,当然,你也可以使用其他例如163、Gmail等支持SMTP的邮箱来配置此插件。如下图(图片是缩略图,点击还原放大):
PS:2013年12月9日更新,由于发现普通的邮箱在SMTP发信中出现不少的问题,部落改用了企业邮箱:用腾讯企业邮箱解决误判垃圾邮件和SMTP无法发送邮件错误。
5、另外还要注意了,你使用的邮箱一定要开启IMAP/SMTP服务,像163邮箱好像没有开启,推荐你使用Gmail邮箱和QQ邮箱。QQ邮箱一般在账户设置中开启。如下图(图片是缩略图,点击还原放大):
6、设置完成后,点击保存。然后再发送一封测试邮件,如果提示发送成功,就表示你配置成功了。否则请对照上方检查错误。如下图:
7、Configure SMTP这个插件安装好后,然后在后台启用了WP Thread Comment的回复评论邮件通知功能。
8、经过我的测试,在前台(就是文章页面)回复评论被回复者的邮箱会收到邮件通知,但是管理员从后台管理面板回复评论则不会发送邮件。
9、解决上面的问题,又要用到另外一个插件Comment Reply Notification,这个插件可以很好解决后台管理回复评论邮件通知的问题。
10、这里是Comment Reply Notification下载地址,还有官方网站:https://wordpress.org/extend/plugins/comment-reply-notification/
11、记得在插件后台设置成回复发送邮件。如下图:
12、另外Comment Reply Notification发送邮件默认是英文的,你可以自己修改成中文的。下面给出我的邮件原文代码,你可以直接复制过去。
<p></p>
<p><strong>[pc_author]: </strong></p>
<p><strong>您好</strong>,您之前在文章《[postname]》上的评论现在有了新的回复</p>
<p>您之前的评论是([pc_date] ):<br />[pc_content]</p>
<p><strong>[[cc_author]]</strong>回复您如下([cc_date]):<br />[cc_content]</p>
<p>请点击以下链接查看具体内容:<br />
<a href="[commentlink]">[commentlink]</a></p>
<br /><strong>感谢您对 <a href="[blogurl]">[blogname]</a> 的关注</strong>
<br /><strong>该信件由系统自动发出, 请勿回复, 谢谢.</strong></p>
<p><strong>如果你有任何疑问,请联系我。邮箱:freehao123@gmail.com,我的QQ:798558110</strong></p>
PS:20160203更新,感谢好友 coro 的提醒,这里是免插件代码版,直接放在Wordpress的函数文件中即可:
//有新回复时,给评论人发送通知邮件
function comment_mail_notify($comment_id) {
$comment = get_comment($comment_id);
$content=$comment->comment_content;
$match_count=preg_match_all('/<a href="#comment-([0-9]+)?" rel="nofollow">/si',$content,$matchs);
if($match_count>0){
foreach($matchs[1] as $parent_id){
SimPaled_send_email($parent_id,$comment);
}
}elseif($comment->comment_parent!='0'){
$parent_id=$comment->comment_parent;
SimPaled_send_email($parent_id,$comment);
}else return;
}
add_action('comment_post', 'comment_mail_notify');
function SimPaled_send_email($parent_id,$comment){
$admin_email = get_bloginfo ('admin_email');
$parent_comment=get_comment($parent_id);
$author_email=$comment->comment_author_email;
$to = trim($parent_comment->comment_author_email);
$spam_confirmed = $comment->comment_approved;
if ($spam_confirmed != 'spam' && $to != $admin_email && $to != $author_email) {
$wp_email = 'no-reply@' . preg_replace('#^www\.#', '', strtolower($_SERVER['SERVER_NAME']));
$subject = '你在 《' . get_the_title($comment->comment_post_ID) . '》—— Coro博客 的评论有了新的回复';
$message = '您在</a><a href="' . get_option('home') . '" rel="nofollow">' . get_option('blogname') . '</a>博客上的留言有回复啦! ' . trim(get_comment($parent_id)->comment_author) . ', 您好!您曾在 [' . get_option("blogname") . '] 的文章《' . get_the_title($comment->comment_post_ID) . '》 上发表评论:' . nl2br(get_comment($parent_id)->comment_content) . '' . trim($comment->comment_author) . ' 给您的回复如下:' . nl2br($comment->comment_content) . '您可以点击 <a href="' . htmlspecialchars(get_comment_link($parent_id)) . '" rel="nofollow">查看回复的完整內容</a>感谢你对 <a href="' . get_option('home') . '" rel="nofollow">' . get_option('blogname') . '</a>关注,如您有任何疑问,欢迎在博客留言,我会一一解答 ';
$from = "From: \"" . get_option('blogname') . "\" ";
$headers = "$from\nContent-Type: text/html; charset=" . get_option('blog_charset') . "\n";
wp_mail( $to, $subject, $message, $headers );
}
}
1、因为我设置了任意回复邮件通知,所以基本上只要有回复,就会有邮件通知。如下:
2、因为用的是QQ邮箱的SMTP,所以可以在QQ邮箱的已发送中看到已经送过的邮件,如下:
3、回复评论邮件发送有时快,有时慢,而且还有两个问题,一个是如果在后台首页点击回复,是不会发送邮件通知的。
4、另一个问题是利用WP Thread Comment的后台嵌套回复评论功能回复也是无法发送邮件通知的。如下图:
5、具体有效果你可以直接在文章下面留言等有回复时你即可收到邮件。有任何Bug欢迎告诉我。
1、本篇文章主要是解决Wordpress的mail()函数无法正常发送邮件从而改用SMTP发送邮件通知的问题。
2、但是如果你测试依然没有成功,那么很有可能你的主机连SMTP也给禁用了。这样的主机不用也罢了。
3、最近Wordpress3.3全新版已经出来了,是观望呢还是升级呢?升级失败又该怎么办?这些问题咱们免费教程分类的下一篇文章讨论。
文章出自:免费资源部落 / 版权所有。本站文章除注明出处外,皆为作者原创文章,可自由引用,但请注明来源。 禁止全文转载。
您或许对下面这些文章有兴趣: 本月吐槽辛苦排行榜
-
对啊 我昨天留言时候 还看到预览的 奇怪 是不是你头像缓存遗失了?
[回复] -
windows主机在国内比较多,国外很少见。有的也是很贵的。Wordpress还是用Linux好。
[回复] -
很好,我收到了老大的邮件的回复了。
[回复] -
有邮件通知回复好一点。
[回复] -
博主的邮件通知不错,我拿去用了。呵呵。。。
[回复] -
不管怎么设置都是:There was an error while trying to send the test email. Please check the connection details.
000webhost主机
[回复] -
我博客也出现这个问题了,看了你的文章解决了,并且已经转载(已经添加原文链接)
博文地址:https://www.myluoluo.com/index.php/configure_smtp_tomail.love/[回复]qi 回复:
你的博客也是放在国内的Windows主机上吗?
[回复]ら.花舞花落泪 回复:
@qi, 不是的,说实话,国内的太坑爹了,虽然速度好,但是对于学生来说,不管是空间还是vps都是贵的出奇,而且国内*的流程太慢,倒霉的时候一个月都备不下来。哎
[回复] -
嗯,对的,昨天发的日志,生成的时候发现,不能正常的生成,#的被我禁用了,现在在调试Baidu地图,不知道是什么原因,权限调整777也是不行。
[回复] -
好了,我的问题解决了,原因是iis的来宾用户没有权限,我刚看你的sitemap.xml文件。。文章好多。。。
[回复] -
SMTP禁止呢。linux可以用mail()。插件都试过了,不知道是不是冲突。之前有一次写的代码成功发送邮件,但都是乱码。改成utf-8也乱码。现在连邮件都发布出去了
[回复] -
我了个纠结了,客服说不支持smtp外部调用,加代码使用ANSI编码可以发送邮件,但是是乱码。转换成utf-8则不能发送邮件。在别的空间转换成utf-8能发送邮件呢~
[回复]qi 回复:
@jageil, 奇怪了,为什么要禁止smtp调用了呢?我只见过禁用mail的,没见过这样的。如果不能发送,那一定是空间的问题了。
[回复]jageil 回复:
@qi, 对啊对啊!他说只支持几种特定的smtp调用,都没见过的。然后我说了这个问题,他说检查,检查了一下午,晚上11点发邮件告诉我检查不出来让我去询问web程序商。。。我就郁闷了。别的空间都能用,就是ix不行
[回复]qi 回复:
@jageil, 我刚才查了一下,网上说godaddy也禁用了大部分的smtp服务,而且也禁用了mail,只能使用自己的邮局。你的ix空间应该有邮局它,试试他们的邮局看看。
[回复]jageil 回复:
@qi, 应该怎么操作呢?没用过啊前辈
[回复]qi 回复:
@jageil, 有点像腾讯企业邮局设置一样,先添加MX记录,生效后就可以开始使用了。/exmail-qq-smtp/,你找一下ix邮局有没有提供。
[回复]jageil 回复:
@qi, 你给的链接去看了,没找到原因,smtp链接错误111。不过好像找到原因了,我虽然怀疑过是版本的问题,但也没有试过,因为官网3.4.1版好像说过解决了邮件发送的BUG。但是让我纠结了这么久客服也说不上来,叫我问web程序员。后来无可奈何我索性去后台一键安装2.9的wordpress。结果测试完全没问题了。我晕死…………看来接下来又要转到版本兼容的问题上了
[回复]qi 回复:
@jageil, 搞了半天,是代码和Wordpress版本兼容的问题。
[回复]jageil 回复:
@qi, 好像没这么简单,回去试了下,正如之前所说3.4.1在别的空间也可以。在ix上面WordPress 3.4 RC3以上的版本都不行。只有3.4 RC2可以用,但是3.4 RC2测试几遍发现网站标题带有”,”和“’”等字符也会导致utf-8不能发送邮件。就把特殊符号去掉,终于成功了~
[回复]qi 回复:
@jageil, 发邮件难道和标题也有关系?
[回复]jageil 回复:
@qi, 不知道呢~只是我将邮件回复代码加入functions.php。改成utf-8在ix主机只要标题含“’”特殊符号就发不出邮件。不带特殊符号就好了,所以现在换把标题改掉了呢。
[回复]hot8bbs 回复:
@qi, 根据福步外贸论坛发垃圾信(他们叫开发信)的专家说,现在邮件反垃圾系统不仅过滤标题的关键字,对正文的
内容审核也很严,有些词都不能用,用了就直接进垃圾箱.譬如英文的免费free就是重点封杀的垃圾信关键词,所以Qi的博客发的信很容易被主流邮箱封杀.推荐看 料神Sam的相关文章,你会发现发垃圾邮件是一个大学问.专业发垃圾信的(他们叫邮件营销)很难进垃圾箱,垃圾箱里大量是个人发的正常信[回复] -
正在测试这个功能,还没成功。Openshift支持找回密码,不过先在000webhost里测试。
[回复] -
终于试验成功了!Comment Reply Notification+Configure SMTP
不过发现后台首页多了个【我爱水煮鱼】,不知道是怎么出来的?[回复]注意黑链 回复:
@allost, 不推荐 水X鱼 的这个插件,里面偷夹了hei链,这个在国内博客界已经是公开的秘密,收到众小站长谴责,否则谷歌也不会封杀他,
水X鱼开发的插件基本上都有黑@链的,还有无觅也带黑@链.
估计Qi会去hei链,allost恐怕就不一定会去黑@链.这种评论邮件插件wordpress目前最火的是Send email only on Reply to My Comment
这个没有黑@链,用着还好.直接可以在WP官方平台下载.尽量不要在官方平台以外下载插件,不仅是水X鱼的.其他的也要小心.一般都有黑@链和后门.[回复] -
谢谢分享
[回复] -
测试时出现SMTP -> ERROR: Failed to connect to server: Unable to find the socket transport “ssl” – did you forget to enable it when you configured PHP? (5) SMTP -> ERROR: Failed to connect to server: Unable to find the socket transport “ssl” – did you forget to enable it when you configured PHP? (5)
[回复]qi 回复:
@辉少, 你是用什么邮箱呢?Gmail试过没?还有端口看看有没有填写清楚,那SSL加密你要看你用的邮箱支持不支持。
[回复]辉少 回复:
@qi, 还是这样,估计是我空间有问题,不能用ssl加密。我用的是香港的空间 发送时提示SMTP – > ERROR:无法连接到服务器:无法找到套接字传输“SSL” – 你忘了启用它,当您配置PHP?(5)
[回复]qi 回复:
@辉少, 空间限制也是一个原因,有些空间就是禁止使用smtp的,试试直接联系客服解决它。
[回复]辉少 回复:
@qi, 成功了!感谢老大的关注
[回复]qi 回复:
@辉少, 是空间商帮你设置好了吗?还是自己摸索出来的?
[回复]辉少 回复:
@qi, 成功倒是成功了,但是在前台发表评论是总是出现以下语句,不过刷新后消失
SMTP -> FROM SERVER:250 Ok
SMTP -> get_lines(): $data was “”
SMTP -> get_lines(): $str is “250 Ok ”
SMTP -> get_lines(): $data is “250 Ok ”
SMTP -> FROM SERVER:250 Ok
SMTP -> get_lines(): $data was “”
SMTP -> get_lines(): $str is “354 End data with . ”
SMTP -> get_lines(): $data is “354 End data with . ”
SMTP -> FROM SERVER:354 End data with .
SMTP -> get_lines(): $data was “”
SMTP -> get_lines(): $str is “250 Ok: queued as ”
SMTP -> get_lines(): $data is “250 Ok: queued as ”
SMTP -> FROM SERVER:250 Ok: queued as
雾水 :
您的评论正在等待审核!
2012/10/08 下午 3:28[回复] -
@qi, 不知道,我重复跟换了好几个SMTP插件,都不行,最后还是换上Configure SMTP居然成功了….我表示无语
[回复] -
按照博主的操作了,一样的qq的vip邮箱,但是测试邮件无法接到…空间是Technetcal的,唉。。。
[回复] -
用博主的教程成功实现邮件通知,但是原来的主题评论样式挺好看的,用了插件之后变得和难看,怎么操作能将原主题的样式融入插件中呢
[回复] -
您好,我的是用SF免费空间弄的,可以实现邮件回复功能吗,通过找回密码的方法我测试了下,主机禁用了mail()函数
[回复] -
WIN系统 用插件WP-Mail-SMTP
在用代码,后台回复也可以收到。
不过只能用这段代码才行。。有缺陷!!//评论邮件回复
/* comment_mail_notify v1.0 by willin kan.*/
function comment_mail_notify($comment_id) {
$admin_email = get_bloginfo (‘admin_email’); // $admin_email 可改为你指定的 e-mail.
$comment = get_comment($comment_id);
$comment_author_email = trim($comment->comment_author_email);
$parent_id = $comment->comment_parent ? $comment->comment_parent : ”;
$to = $parent_id ? trim(get_comment($parent_id)->comment_author_email) : ”;
$spam_confirmed = $comment->comment_approved;
if (($parent_id != ”) && ($spam_confirmed != ‘spam’) && ($to != $admin_email) && ($comment_author_email == $admin_email)) {/* 上面的判断式,决定发送邮件的必要条件:
($parent_id != “) && ($spam_confirmed != ‘spam’): 回复的, 而且不是 spam 才可发, 必需!!
($to != $admin_email) : 不发給 admin.
($comment_author_email == $admin_email) : 只有 admin 的回复发邮件.
可视个人需求修改以上条件.
*/
//e-mail 发出点, no-reply 可改为可用的 e-mail.
$wp_email = ‘no-reply@’ . preg_replace(‘#^www.#’, ”, strtolower($_SERVER[‘SERVER_NAME’]));
//邮件内容
$subject = ‘您在 [‘ . get_option(“blogname”) . ‘] 的留言有了回应’;
$message = trim(get_comment($parent_id)->comment_author) . ‘, 您好!
您曾在《’ . get_the_title($comment->comment_post_ID) . ‘》的留言:’
. trim(get_comment($parent_id)->comment_content) . ‘ ‘ . trim($comment->comment_author) . ‘ 给您的回应:’ . trim($comment->comment_content) . ‘ 您可以点击 ‘ . htmlspecialchars(get_comment_link($parent_id)) . ‘查看回应完整內容 欢迎再度光临’ . get_option(‘home’) . ” . get_option(‘blogname’) . ‘ (此邮件由系统自动发出, 请勿回复.) ‘;
$from = “From: “” . get_option(‘blogname’) . “” “;
$mail_headers = “$fromnContent-Type: text/html; charset=” . get_option(‘blog_charset’) . “n”;
wp_mail( $to, $subject, $message, $headers );
}
}
//发表评论时的动作钩子
add_action(‘comment_post’, ‘comment_mail_notify’);上面这段虽然可以发送,但是美化丑到爆。。
其他代码加上了 就发不出邮件,
搞不懂//评论回应邮件通知
function comment_mail_notify($comment_id) {
$admin_email = get_bloginfo (‘admin_email’);
$comment = get_comment($comment_id);
$comment_author_email = trim($comment->comment_author_email);
$parent_id = $comment->comment_parent ? $comment->comment_parent : ”;
$to = $parent_id ? trim(get_comment($parent_id)->comment_author_email) : ”;
$spam_confirmed = $comment->comment_approved;
if (($parent_id != ”) && ($spam_confirmed != ‘spam’) && ($to != $admin_email)) {
$wp_email = ‘no-reply@’ . preg_replace(‘#^www.#’, ”, strtolower($_SERVER[‘SERVER_NAME’]));
$subject = ‘您在 [‘ . get_option(“blogname”) . ‘] 的留言有了新回复’;
$message = ‘您在 [‘ . get_option(“blogname”) . ‘] 上的留言有回复啦!
‘ . trim(get_comment($parent_id)->comment_author) . ‘, 您好!
您在《’ . get_the_title($comment->comment_post_ID) . ‘》的留言:
‘. trim(get_comment($parent_id)->comment_content) . ‘
‘ . trim($comment->comment_author) . ‘ 给你的回复:
‘. trim($comment->comment_content) . ‘
你可以点击 ‘comment’))) . ‘”>查看完整内容
欢迎再度光临’ . get_option(‘blogname’) . ‘
(此邮件由系统自动发出, 请勿回复。)
‘;
$from = “From: “” . get_option(‘blogname’) . “” “;
$headers = “$fromnContent-Type: text/html; charset=” . get_option(‘blog_charset’) . “n”;
wp_mail( $to, $subject, $message, $headers );
}
}
add_action(‘comment_post’, ‘comment_mail_notify’);[回复] -
话说我的回复内容好难看,站长是用的什么代码回复的,和我的不一样
[回复]qi 回复:
@coro, 就是在邮件里加了一些CSS代码,可以用Chrome查看元素。
[回复]coro 回复:
@qi, 你还用的插件么,我用的代码你看下
//有新回复时,给评论人发送通知邮件
function comment_mail_notify($comment_id) {
$comment = get_comment($comment_id);
$content=$comment->comment_content;
$match_count=preg_match_all('//si',$content,$matchs);
if($match_count>0){
foreach($matchs[1] as $parent_id){
SimPaled_send_email($parent_id,$comment);
}
}elseif($comment->comment_parent!='0'){
$parent_id=$comment->comment_parent;
SimPaled_send_email($parent_id,$comment);
}else return;
}
add_action('comment_post', 'comment_mail_notify');
function SimPaled_send_email($parent_id,$comment){
$admin_email = get_bloginfo ('admin_email');
$parent_comment=get_comment($parent_id);
$author_email=$comment->comment_author_email;
$to = trim($parent_comment->comment_author_email);
$spam_confirmed = $comment->comment_approved;
if ($spam_confirmed != 'spam' && $to != $admin_email && $to != $author_email) {
$wp_email = 'no-reply@' . preg_replace('#^www.#', '', strtolower($_SERVER['SERVER_NAME']));
$subject = '你在 《' . get_the_title($comment->comment_post_ID) . '》—— ' . get_option('blogname') . ' 的评论有了新的回复';
$message = '您在' . get_option('blogname') . '
博客上的留言有回复啦!' . trim(get_comment($parent_id)->comment_author) . ', 您好!
您曾在 [' . get_option("blogname") . '] 的文章
《' . get_the_title($comment->comment_post_ID) . '》 上发表评论:
' . nl2br(get_comment($parent_id)->comment_content) . '
' . trim($comment->comment_author) . ' 给您的回复如下:
' . nl2br($comment->comment_content) . '
您可以点击 查看回复的完整內容
感谢你对 ' . get_option('blogname') . '关注,如您有任何疑问,欢迎在博客留言,我会一一解答';
$from = "From: "" . get_option('blogname') . "" ";
$headers = "$fromnContent-Type: text/html; charset=" . get_option('blog_charset') . "n";
wp_mail( $to, $subject, $message, $headers );
}
}
[回复] -
上面代码出错了,请删除下,这个是我用的代码
//有新回复时,给评论人发送通知邮件
function comment_mail_notify($comment_id) {
$comment = get_comment($comment_id);
$content=$comment->comment_content;
$match_count=preg_match_all('//si',$content,$matchs);
if($match_count>0){
foreach($matchs[1] as $parent_id){
SimPaled_send_email($parent_id,$comment);
}
}elseif($comment->comment_parent!='0'){
$parent_id=$comment->comment_parent;
SimPaled_send_email($parent_id,$comment);
}else return;
}
add_action('comment_post', 'comment_mail_notify');
function SimPaled_send_email($parent_id,$comment){
$admin_email = get_bloginfo ('admin_email');
$parent_comment=get_comment($parent_id);
$author_email=$comment->comment_author_email;
$to = trim($parent_comment->comment_author_email);
$spam_confirmed = $comment->comment_approved;
if ($spam_confirmed != 'spam' && $to != $admin_email && $to != $author_email) {
$wp_email = 'no-reply@' . preg_replace('#^www.#', '', strtolower($_SERVER['SERVER_NAME']));
$subject = '你在 《' . get_the_title($comment->comment_post_ID) . '》—— Coro博客 的评论有了新的回复';
$message = '您在' . get_option('blogname') . '
博客上的留言有回复啦!' . trim(get_comment($parent_id)->comment_author) . ', 您好!
您曾在 [' . get_option("blogname") . '] 的文章
《' . get_the_title($comment->comment_post_ID) . '》 上发表评论:
' . nl2br(get_comment($parent_id)->comment_content) . '
' . trim($comment->comment_author) . ' 给您的回复如下:
' . nl2br($comment->comment_content) . '
您可以点击 查看回复的完整內容
感谢你对 ' . get_option('blogname') . '关注,如您有任何疑问,欢迎在博客留言,我会一一解答';
$from = "From: "" . get_option('blogname') . "" ";
$headers = "$fromnContent-Type: text/html; charset=" . get_option('blog_charset') . "n";
wp_mail( $to, $subject, $message, $headers );
}
}[回复]