【前情提要】
- 这个问题很早我就跟鸟哥提过,当时他也并没有多说什么,自己又不是很懂只能自己研究了一翻找了一些资料解决了当时的问题
- WordPress解决回复无法邮件通知主机禁用了mail()函数问题
- 不过在昨天更新了新的主题时发现主题自带了这个功能
//WordPress邮箱SMTP配置开始 add_action('phpmailer_init', 'mail_smtp'); function mail_smtp( $phpmailer ) { $phpmailer->FromName = '孤狼博客【www.7585.net.cn】'; // 发件人昵称 $phpmailer->Host = 'smtp.qq.com'; // 邮箱SMTP服务器 $phpmailer->Port = 465; // SMTP端口,不需要改 $phpmailer->Username = '123456@qq.com'; // 邮箱账户 $phpmailer->Password = 'aabbccddffgg'; // 此处填写邮箱生成的授权码,不是邮箱登录密码 $phpmailer->From = '123456@qq.com'; // 收件邮箱账户 $phpmailer->SMTPAuth = true; $phpmailer->SMTPSecure = 'ssl'; // 端口25时 留空,465时 ssl,不需要改 $phpmailer->IsSMTP(); }
【详情解说】
- 大部分提供配置代码的说明中没有明确写明第8行$phpmailer->Password 配置中的密码是邮箱第三方授权码,而不是邮箱的登录密码,这是不能成功发邮件的关键之处。
- 下面仅以QQ邮箱为例,简单说一下如何开启邮箱IMAP/SMTP服务和获得第三方授权码。
- 首先将上面的代码添加到当前主题函数模板functions.php中,并修改其中的相关信息。
- 开启IMAP/SMTP服务
- 登录你的QQ邮箱,依次点击,设置 → 账户,找到“POP3/IMAP/SMTP/Exchange/CardDAV/CalDAV服务”设置选项,开启邮箱“IMAP/SMTP服务”。
- 获取授权码
- 点击下面的“生成授权码 ”,按要求发送短信:配置邮件客户端,到指定的号码,之后点击“我已发送”,会自动生一个授权码,要记好这个授权码,因为只显示一次,没记住只能再次发送短信了,将这个授权码填写到配置信息中即可。
- 我自己只试过QQ邮箱和126的,其它邮箱方法类似。
- 注:貌似目前所有邮箱端口都可以设置为465,都支持ssl加密
继续阅读
- 我的微信
- 这是我的微信扫一扫
-
- 我的微信公众号
- 我的微信公众号扫一扫
-
评论