修改 mail to commenter,让邮件通知更加友好
曾经我推荐了一个插件,是国人写的关于邮件通知回复评论的一个插件,叫mail to commenter,这个插件很好,从功能和兼容各方面都不错,我也一直在用,不过昨天有位朋友(JasonChao)跟我说,回复时,邮件地址显示为“WordPress 博客名称”,说这种方式从互动显示方面来讲不太友好,问我可不可以变换成“博客名称 <no-reply@域名>”的方式,我在没有经过原作者同意的情况下,试着去修改了一下,以达到这种友好的效果。
好了,下面来跟着我去修改代码吧。
打开mail to commenter这个插件的目录,然后打开mailtocommenter_functions.php这个文件,在第213行会看到以下代码:
- function mailtocommenter_send_email($to,$subject,$message){
- $blogname = get_option('blogname');
修改成如下:
- function mailtocommenter_send_email($to,$subject,$message){
- /* modify by freephp(http://xfuxing.com) 2009-11-3
- //source code
- $blogname = get_option('blogname');
- */
- /* my modify code start (freephp)*/
- $hostname = get_option('home'); //get blog url
- preg_match("/^(http:\/\/)?([^\/]+)/i",$hostname, $matches); //get hostname from blog url
- $blogname = get_option('blogname');
- $blogname .= " <no-reply@"; //blogname+<no-reply@
- $blogname .= $matches[2]; //blogname+<no-reply@+hostname
- $blogname .= ">"; //blogname+<no-reply@+hostname+>=blogname<no-reply@hostname>
- /* my modify code end (freephp)*/
好了,去测试一下吧,应当没什么问题的。所有的注释只是为了方便,您可以去掉,要注意的一点就是在“$blogname .= ” <no-reply@”;”这行里,“<”之前的空格一定不要去掉,否则会在编码上出现半个中文字(乱码)的样子,哈哈。哦,还有一点,一定要注意保存文件的格式:utf-8无BOM。

大力感谢啊
@JasonChao:
不客了,就当您了给我出道题让我玩了,呵呵。
牛叉之人必有牛叉之作,此文得以窥见一二,强!
@万戈:
老万,感谢您了总过来捧兄弟,无以为报啊。
呵呵 专程前来膜拜一下
@Louis Han:
您了太客气了。
第一次来到贵博,先留个脚印,免得迷路。博主加油。博主文章经典呀
@小农夫 :
呵,没什么经典的东西,有用的尽管拿去,多谢新朋友来捧场。
哦,我用Comment Reply Notification
哇咔,终于找到解决mail to comment发送给别人地址为空的问题了
太感谢了!!!
@浩子:
不客,能用就好。谢谢捧场。
@德海: 兄弟,现在用是能用了,但是我测试发送的邮件发件人都是乱码啊……???
可以帮忙解决下么?
朋友,是不是你修改的对中文名字的不怎么兼容?
呵呵
可以把你插件打包发到我邮箱一份么?
haozer@qq.com
呵呵,谢谢了,兄弟,不用给我发插件了……
我没有注意看“$blogname .= ” <no-reply@”;”这行里,“<”之前的空格一定不要去掉,否则会在编码上出现半个中文字(乱码)的样子”这一句,所以才出现了乱码的,囧……谢谢了哦
谢谢啦,简单实用。。。
@浩子:
呵,其实玩代码很多都是在逻辑与心细上,能用就好了。
@冰剑:
不客气,资源共享嘛。
太感谢了,使用这个逃出Google垃圾邮件厄运
这个插件好像也不错啊
@德海:
我一改就出现编码错误,导致网站也打不开,不知是何原因