发布时间:2025-12-10 17:07:33 浏览次数:4
本站一向致力于wordpress主题下载和wordpress基础教程的分享宣布,谢谢人人多日来的支撑和勉励。本日说到的这个wordpress批评邮件提示和wordpress邮件发送失利的处理方案,原教程来自小编的挚友兼友情链接用户CREEKOO的,相识更多CREEKOO的朋侪请到友情链接处接见,谢谢CREEKOO的分享!
我前些天制造的一款简约类的wordpress博客主题Laconic分享给人人后,许多人问我,我站里的wordpress批评邮件提示功用是这么完成的,当时我很简单的复兴下代码完成,能够后发明许多朋侪都有如许的问题,所以本日小编草拟了这份教程,供人人运用,望能给人人在wordpress运用方面带来轻易,也迎接人人珍藏我们,多多关注我们!
下面先说wordpress批评邮件提示功用的完成要领吧!
实在要领很简单,在wordpress主题根目录下找到functions.php文件,用特地的编写代码软件将下面的代码到场进去
//批评邮件自动关照,来自creekoo
functioncomment_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)&&($comment_author_email==$admin_email)){
$wp_email='[emailprotected]'.preg_replace('#^www\.#','',strtolower($_SERVER['SERVER_NAME']));
$subject='您在['.get_option("blogname").']的批评有新的复兴';
$message='
<p>
<p>'.trim(get_comment($parent_id)->comment_author).',您好!</p>
<p>您曾在['.get_option("blogname").']的文章《'.get_the_title($comment->comment_post_ID).'》上宣布批评:<br/>'
.nl2br(get_comment($parent_id)->comment_content).'</p>
<p>'.trim($comment->comment_author).'给您的复兴以下:<br>'
.nl2br($comment->comment_content).'</p>
<p>您能够点击<ahref="'.htmlspecialchars(get_comment_link($parent_id,array('type'=>'comment'))).'">检察复兴的完全內容</a></p>
<p>迎接再次莅临<ahref="'.get_option('home').'">'.get_option('blogname').'</a></p>
<p>(此邮件由体系自动发出,请勿复兴。)</p>
</p>';
$message=convert_smilies($message);
$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);
}
}
add_action('comment_post','comment_mail_notify');
经由过程以上代码即可完成wordpress批评邮件提示功用,肿么样,是不是很简单,免去了这个插件谁人插件的运用了?
然则从这个教程中,会衍生出另一个问题,那就是许多win主机照样发送不了邮件,或许linux的主机发邮件过于迟缓,均会形成批评速率变慢的问题,那末怎样处理wordpress邮件发送失利的问题呢?那末就继承看教程吧
要领很简单,那就是用代码的要领将wordpress自带发送邮件的功用用外部邮箱的SMTP来完成!如许的要领优点是批评速率快,且win主机和linux主机均能够疾速发出邮件,从让处理上面谁人教程带来的wordpress邮件发送失利的问题!
那末教程同样是在在wordpress主题根目录下找到functions.php文件,到场下面的代码
//运用smtp发送邮件,笔者用的是QQ邮箱,你能够参照你运用的邮箱详细设置SMTP
add_action('phpmailer_init','mail_smtp');
functionmail_smtp($phpmailer){
$phpmailer->FromName='CreeKoo';//发件人
$phpmailer->Host='smtp.qq.com';//修正成你运用的SMTP服务器
$phpmailer->Port=25;//SMTP端口
$phpmailer->Username='****@qq.com';//邮箱账户
$phpmailer->Password='*********';//邮箱暗码
$phpmailer->From='*****@qq.com';//你的邮箱
$phpmailer->SMTPAuth=true;
$phpmailer->SMTPSecure='';//tlsorssl(port=25留空,465为ssl)
$phpmailer->IsSMTP();
}
将代码里的信息替换成本身的即可,这里要说到的是邮箱的SMTP端口有25或许是465,人人能够尝尝。。。
教程就到这了。。须要的朋侪能够尝试下哈
假如看不懂此教程的朋侪能够到场我们的wordpress技术交流群,群号文章的下方蓝色笔墨有!也能够找小编我付费辅佐!哈哈
2013/8/31更新
这里要再特别的说一下,在lnmp环境下,不管你是安装了sendmail组件照样Shell下的mail敕令都OK的情况下,照样不能发送邮件的话,那末就须要到php.ini文件里修正设置了,
军哥的lnmp的php.ini文件在/usr/local/php/etc/php.ini 查找到sendmail_path 修正成:sendmail_path = /usr/sbin/sendmail -t -i 或许开放pfsockopen、fsockopen两个函数即可OK!!!