WordPress增加评论自动邮件通知博主的功能
发布:smiling 来源: PHP粉丝网 添加日期:2014-03-22 16:11:46 浏览: 评论:0
由于自己比较懒不会经常上博客后台去看有没有朋友对文章有评论或有问题请教,于是想到一个比较好的解决办法,就是用用户主评论了我们就自动邮箱通过我,这样可以解决这个问题了.
方法一,windows,linux主机
根据自己的需要,选择一种自己需要的代码,添加在主题的 functions.php 文件的最后一个 ?> 前面即可,所有回复都发送邮件通知,默认所有填写了邮箱的评论都将发邮件提醒评论人,没有任何勾选设置,代码如下:
- /* comment_mail_notify v1.0 by willin kan. (所有回复都发邮件) */
- 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 = 'no-reply@' . preg_replace('#^www.#', '', strtolower($_SERVER['SERVER_NAME'])); //e-mail 发出点, no-reply 可改为可用的 e-mail.
- $to = trim(get_comment($parent_id)->comment_author_email);
- $subject = '您在 [' . get_option("blogname") . '] 的留言有了回复';
- $message = '
- <div style="background-color:#eef2fa; border:1px solid #d8e3e8; color:#111; padding:0 15px; -moz-border-radius:5px; -webkit-border-radius:5px; -khtml-border-radius:5px;">
- <p>' . trim(get_comment($parent_id)->comment_author) . ', 您好!</p>
- <p>您曾在《' . get_the_title($comment->comment_post_ID) . '》的留言:<br />'
- . trim(get_comment($parent_id)->comment_content) . '</p>
- <p>' . trim($comment->comment_author) . ' 给您的回复:<br />'
- . trim($comment->comment_content) . '<br /></p>
- <p>您可以点击 查看回复完整?热?lt;/p>
- <p>欢迎再度光临 ' . get_option('blogname') . '</p>
- <p>(此邮件由系统自动发送,请勿回复.)</p>
- </div>';
- $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');
- // -- END ----------------------------------------
方法二,针对在SAE上的WordPress增加评论自动邮件通知功能,如果你是自己购买的虚拟主机/VPS之类的话就直接安装一个SMTP的邮件插件就可以了、但是如果你和我一样吧博客放在SAE上的话、就需要做一些修改才行了.
首先;我们需要修改functions.php文件
你需要把我下面的PHP代码复制黏贴到你主题的functions.php文件中的<?php …….?>之间,你可以通过SAE的 Editor也可以在本地修改好代码之后用SVN上传、推荐用SVN吧,代码如下:
- /* comment_mail_notify by http://www.111cn.net (所有回复都发邮件) */
- 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 = 'no-reply@' . preg_replace('#^www.#', '', strtolower($_SERVER['SERVER_NAME'])); //e-mail 发出点, no-reply 可改为可用的 e-mail.
- $to = trim(get_comment($parent_id)->comment_author_email);
- $subject = '您在 [' . get_option("blogname") . '] 的留言有了回复';
- $message = '
- <div style="background-color:#eef2fa; border:1px solid #d8e3e8; color:#111; padding:0 15px; -moz-border-radius:5px; -webkit-border-radius:5px; -khtml-border-radius:5px;">
- <p>' . trim(get_comment($parent_id)->comment_author) . ', 您好!</p>
- <p>您曾在《' . get_the_title($comment->comment_post_ID) . '》的留言:<br />'
- . trim(get_comment($parent_id)->comment_content) . '</p>
- <p>' . trim($comment->comment_author) . ' 给您的回复:<br />'
- . trim($comment->comment_content) . '<br /></p>
- <p>您可以点击 <a href="' . htmlspecialchars(get_comment_link($parent_id)) . '">查看回复完整?热?lt;/a></p>
- <p>欢迎再度光临 <a href="' . get_option('home') . '">' . get_option('blogname') . '</a></p>
- <p>(此邮件由系统自动发送,请勿回复.)</p>
- </div>';
- $from = "From: "" . get_option('blogname') . "" <$wp_email>";
- $headers = "$from Content-Type: text/html; charset=" . get_option('blog_charset') . " ";
- wp_mail( $to, $subject, $message, $headers );
- //echo 'mail to ', $to, '<br/> ' , $subject, $message;
- }
- }
- add_action('comment_post', 'comment_mail_notify');
- // -- END ----------------------------------------
接着,我们需要安装一个SMTP的插件,下载好Configure SMTP插件、通过SVN上传到SAE博客上登陆后台启用插件并开始配置、请仔细看下面的配置选项。
Send e-mail via GMail? 不用勾选
SMTP host:smtp.163.com,俺使用的伟大的163邮箱(推荐使用国内的邮箱,否则有可能收不到邮件)
SMTP port:25,一般SMTP服务器都是使用的这个端口
Secure connection prefix:留白、不用选
Use SMTPAuth? 必选
SMTP username:你的用户名,比如安的是hiadmin_email@163.com SMTP password:邮箱密码,123456789
Wordwrap length:留白
Enable debugging? 启用调试模式,不选
Sender e-mail:发送者邮箱,还写上面的hiadmin_email@163.com
Sender name:发送者的姓名,吧你希望显示的名称填上即可保存之后我们自己测试一把去
点击下面的 Send Test e-mail 按钮吧。
到此你的SAE上的wordpress博客在有评论的时候都会发送邮件给你,然后如果你在回复其他人的评论的时候也会有邮件过去,当然如果新用户注册的时候也会有邮件通知的.
Tags: WordPress 邮件 功能
相关文章
- ·WordPress初级教程1:什么是博客?(2013-11-11)
- ·WordPress初级教程-2: 什么是WordPress?(2013-11-11)
- ·WordPress初级教程-3: WordPress的功能和特点(2013-11-11)
- ·WordPress初级教程-4: 选择WordPress博客的主机和域名(2013-11-11)
- ·WordPress初级教程-5: 安装WordPress(2013-11-11)
- ·WordPress初级教程-6: 本地安装WordPress(2013-11-11)
- ·WordPress初级教程-7: 一个数据库中安装多个WordPress博客(2013-11-11)
- ·WordPress初级教程-8: WordPress控制面板/ Dashboard(2013-11-11)
- ·WordPress初级教程-9: WordPress用户设置/ Users(2013-11-11)
- ·WordPress初级教程-10: WordPress博客配置/ Settings(2013-11-11)
- ·关于wordpress上传图片不显示的原因(2013-11-11)
- ·WordPress程序的脆弱点你知道吗 (2013-11-11)
- ·总结八大Wordpress网站百度收录实现秒收的方法绝招 (2013-11-11)
- ·WordPress如何网站投稿者也可以上传图片(2014-03-18)
- ·WordPress怎么修改新用户注册邮件内容(2014-03-18)
- ·WordPress怎么添加前台注册功能(2014-03-18)
推荐文章
热门文章
最新评论文章
- 写给考虑创业的年轻程序员(10)
- PHP新手上路(一)(7)
- 惹恼程序员的十件事(5)
- PHP邮件发送例子,已测试成功(5)
- 致初学者:PHP比ASP优秀的七个理由(4)
- PHP会被淘汰吗?(4)
- PHP新手上路(四)(4)
- 如何去学习PHP?(2)
- 简单入门级php分页代码(2)
- php中邮箱email 电话等格式的验证(2)