推外网络专注营销型网站品牌策划与推广

FOCUS MARKETING WEBSITE BRAND PLANNING AND MARKETING PROMOTION

「seo优化软件」WordPress实现留言、注册、修改密码时SMTP邮件发送通知功能

2019-09-28 13:59:57 100000+ 编辑:推外网络 来源:本站原创
「seo优化软件」

WordPress开通SMTP邮件发送功能可以实现的功能有很多,下面广州seo博主分享两个WordPress纯代码实现留言和用户注册、修改密码SMTP邮件发送通知的功能,当然你也可以通过使用WP-SMTP插件实现邮件发送功能。

WordPress实现发邮件的必备条件

WordPress通过SMTP发邮件需要开通465端口,比如说用阿里云企业邮箱的要开放465端口(到服务器后台添加安全规则);使用QQ邮箱的需要QQ邮箱的账号设置里开启SMTP。

QQ邮箱开启SMTP服务

开启SMTP服务后再把下面的这段邮件配置代码添加到网站主题的functions.php文件中,邮箱信息改成你自己的。

//smtp发送邮件功能,add_action('phpmailer_init','mail_smtp');functionmail_smtp($phpmailer){$phpmailer->FromName='广州SEO';//名字$phpmailer->From='postmaster@360gzseo.com';//邮件账号$phpmailer->Host='smtp.mxhichina.com';//smtp地址,可以到你使用的邮件设置里面找$phpmailer->Port=465;//端口,一般不用修改$phpmailer->Username='postmaster@360gzseo.com';//邮件账号$phpmailer->Password='******';//邮件密码(授权码)$phpmailer->IsSMTP();$phpmailer->SMTPAuth=true;$phpmailer->SMTPSecure='ssl';//tlsorssl(port=25留空,465为ssl)一般不用修改}

下面顺便附上常用的阿里云&腾讯云服务器的端口

阿里企业云邮箱POP3/SMTP协议收发邮件服务器地址,此处只需用到发件的SSL端口465:收件服务器地址:POP服务器地址:pop3.mxhichina.com端口110,SSL加密端口995发件服务器地址:SMTP服务器地址:smtp.mxhichina.com端口25,SSL加密端口465  腾讯企业邮箱POP3/SMTP协议收发邮件服务器地址,此处只需用到发件的SSL端口465:接收邮件服务器:POP服务器地址:pop.exmail.qq.com(端口110),使用SSL,端口号995发送邮件服务器:SMTP服务器地址:smtp.exmail.qq.com(端口25),使用SSL,端口号465
WordPress开启用户注册修改密码SMTP邮件提醒功能设置教程

把网站设置的常规选项中的允许任何人注册勾选即可,如下图所示。

用户注册邮件提醒

WordPress有用户留言时SMTP邮件提醒功能设置教程

1、WordPress后台开通有评论等待审核的时候邮件通知我,不懂的的根据下图操作:

留言SMTP邮件通知

勾选保存后再把下面的代码发到网站主题的functions.php文件中,即可实现用户在我们的网站留言后短信通知我们。

//用户留言时邮件提醒功能,广州SEO(www.360gzseo.com)functioncomment_mail_notify($comment_id){$admin_notify='0';//admin要不要收回复通知('1'=要;'0'=不要)$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:'';global$wpdb;if($wpdb->query("Describe{$wpdb->comments}comment_mail_notify")=='')$wpdb->query("ALTERTABLE{$wpdb->comments}ADDCOLUMNcomment_mail_notifyTINYINTNOTNULLDEFAULT0;");if(($comment_author_email!=$admin_email&&isset($_POST['comment_mail_notify']))||($comment_author_email==$admin_email&&$admin_notify=='1'))$wpdb->query("UPDATE{$wpdb->comments}SETcomment_mail_notify='1'WHEREcomment_ID='$comment_id'");$notify=$parent_id?get_comment($parent_id)->comment_mail_notify:'0';$spam_confirmed=$comment->comment_approved;if($parent_id!=''&&$spam_confirmed!='spam'&&$notify=='1'){$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='<divstyle="background-color:#eef2fa;border:1pxsolid#d8e3e8;color:#111;padding:015px;-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>您可以点击<astyle="text-decoration:none;color:#5692BC"href="'.htmlspecialchars(get_comment_link($parent_id)).'">这里查看回复的完整內容</a><p>(此邮件由'.get_option('blogname').'系统自动发送,请勿回复.)</p></div>';$from="From:"".get_option('blogname').""<$wp_email>";$headers="$fromContent-Type:text/html;charset=".get_option('blog_charset')."";wp_mail($to,$subject,$message,$headers);//echo'mailto',$to,'<br/>',$subject,$message;//fortesting}}add_action('comment_post','comment_mail_notify');//文章页提交留言处自动加勾选栏functionadd_checkbox(){echo'<inputtype="checkbox"name="comment_mail_notify"id="comment_mail_notify"value="comment_mail_notify"checked="checked"style="margin-left:20px;"/><labelfor="comment_mail_notify">有人回复时邮件通知我</label>';}add_action('comment_form','add_checkbox');

总结:实现WordPress纯代码留言、用户注册、修改密码时SMTP邮件发送通知功能的必要条件是SMTP发件功能,在设置中或许会遇到(Thee-mailcouldnotbesent.可能原因:您的主机禁用了mail()函数。)报错提示,你可以在自己检查一遍是否SMTP端口开启了,邮箱的账号密码是否填写正确了。

「seo优化软件」
本站文章均为推外网络摘自权威资料,书籍,或网络原创文章,如有版权纠纷或者违规问题,请即刻联系我们删除,我们欢迎您分享,引用和转载,我们谢绝直接复制和抄袭!感谢...