通常,我们喜欢用Wordpress线程评论或邮件来评论。前者已经很久没有更新了,已经测试支持WordPress2.9.2版本,其他没有测试。优点是不进垃圾箱,支持嵌套回复。今天,我们将通过无插件实现WordPress评论邮件通知。
通常我们喜欢使用WordpressThreadComment或MailToCommenter这两款插件前者久未更新,已测支持WordPress2.9.2版本其他的未测试,优点,不进垃圾箱,支持嵌套回复。后者据网友反馈该插件容易造成邮件延迟邮件进垃圾箱或收不到邮件的情况。
今天来通过无插件实现WordPress评论邮件通知,先看效果:
方法:在主题目录的functions中增加以下代码:
复制代码代码如下:
/*comment_mail_notifyv1.0bywillinkan.(無勾選欄)*/
functioncomment_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的回覆才可發.
可視個人需求修改以上條件.
*/
$wp_email='no-reply@'.preg_replace('#^www\.#','',strtolower($_SERVER['SERVER_NAME']));//e-mail發出點,no-reply可改為可用的e-mail.
$subject='您在【'.get_option("blogname").'】的留言有回复了!去看看吧^_^';
$message='
<divstyle="margin:1em40px1em40px;background-color:#eef2fa;border:1pxsolid#d8e3e8;color:#111;padding:015px;-moz-border-radius:5px;-webkit-border-radius:5px;-khtml-border-radius:5px;border-radius:5px;">
<p>Hi!<strong>'.trim(get_comment($parent_id)->comment_author).'</strong>,您好!
您曾在<strong>《'.get_the_title($comment->comment_post_ID).'》</strong>的留言有了新回复。</p></div>
<divstyle="margin:1em40px1em40px;background-color:#eef2fa;border:1pxsolid#d8e3e8;color:#111;padding:015px;-moz-border-radius:5px;-webkit-border-radius:5px;-khtml-border-radius:5px;border-radius:5px;"><p><strong>
您</strong>说:'.trim(get_comment($parent_id)->comment_content).'</p>
<p><strong>'.trim($comment->comment_author).'</strong>说:
'.trim($comment->comment_content).'</p>
<p>您可以点击<ahref="'.htmlspecialchars(get_comment_link($parent_id)).'">查看完整的回复內容。</a></p>
<p>欢迎再度光临<ahref="'.get_option('home').'">'.get_option('blogname').'</a></p>
<p>(此邮件由系统自动发送,请勿回复。)</p></div>
';
$from="From:\"".get_option('blogname')."\"<$wp_email>";
$headers="$from\nContent-Type:text/html;charset=".get_option('blog_charset')."\n";
wp_mail($to,$subject,$message,$headers);
echo'mailto',$to,'
',$subject,$message;//fortesting
}
}
add_action('comment_post','comment_mail_notify');
//--END----------------------------------------
已测试兼容WordPress3.1版本及多款主题。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)