Php WP Mail SMTP 1.4.2版已停止发送电子邮件
我有一个插件,它使用Php WP Mail SMTP 1.4.2版已停止发送电子邮件,php,wordpress,smtp,phpmailer,Php,Wordpress,Smtp,Phpmailer,我有一个插件,它使用wp\u mail()函数发送表单错误的电子邮件。我已经安装了WP Mail SMTP插件以使用我的自定义SMTP设置 使用WP Mail SMTP版本0.11.1,这几个月一切都很好。但自从我将插件升级到1.4.2版后,我的电子邮件就停止了工作 据我所知,wp\u mail()仅在我的插件中不起作用。如果我把它放在任何地方,如主题文件等,电子邮件会立即发送。但在我的插件中,我每次都会遇到这样的异常: "errors": { "wp_mail_failed": [
wp\u mail()
函数发送表单错误的电子邮件。我已经安装了WP Mail SMTP插件以使用我的自定义SMTP设置
使用WP Mail SMTP版本0.11.1,这几个月一切都很好。但自从我将插件升级到1.4.2版后,我的电子邮件就停止了工作
据我所知,wp\u mail()
仅在我的插件中不起作用。如果我把它放在任何地方,如主题文件等,电子邮件会立即发送。但在我的插件中,我每次都会遇到这样的异常:
"errors": {
"wp_mail_failed": [
"Could not instantiate mail function."
]
},
"error_data": {
"wp_mail_failed": {
"to": [
"oibrahim@folio3.com"
],
"subject": "Form Error",
"message": "<dl><dt>Error Logged:<\/dt> <dd>{\"MembershipNumber\":null,\"Success\":false,\"Message\":\"The combination is incorrect\",\"contactInfo\":{\"PrimaryContactNumber\":null,\"AlternateNumber\":null,\"MobileNumber\":null,\"OtherPhone1\":null,\"Email\":null},\"membership\":{\"EffectiveDate\":null,\"ExpiryDate\":null,\"planInfo\":null,\"MembershipSubProgram\":null},\"address\":{\"HomeAddress\":null,\"MailingAddress\":null,\"BillingAddress\":null},\"slxConstantInfo\":[],\"Token\":null}<\/dd><dt>Timestamp:<\/dt> <dd>Monday, April 22nd, 2019 @ 03:16:30 PM<\/dd><dt>Referrer:<\/dt> <dd>renew\/step1<\/dd><dt>User:<\/dt> <dd> \n<br>\n<br>\n<br>\n<\/dd><\/dl>",
"headers": [
],
"attachments": [
],
"phpmailer_exception_code": 2
}
}
}
“错误”:{
“wp_邮件_失败”:[
“无法实例化邮件功能。”
]
},
“错误数据”:{
“wp_邮件_失败”:{
“致”:[
"oibrahim@folio3.com"
],
“主题”:“表单错误”,
“消息”:“记录的错误:{\'MembershipNumber\':null,\'Success\':false,\'message\':“组合不正确\',\'contactInfo\':{\'PrimaryContactNumber\':null,\'AlternateNumber\':null,\'MobileNumber\':null,\'OtherPhone1\':null,\'Email\':null},\'MembershipDate\':null,\'ExpiryDate\':null,\'planInfo\':null,\'MembershipSubProgram\“:null},\“地址\:{“家庭地址\”:null,\“邮寄地址\”:null,\“账单地址\”:null},\“slxConstantInfo\”:[],\“令牌\”:null}时间戳:2019年4月22日星期一03:16:30 pmreferer:续订\/step1User:\n
\n
\n
\n”,
“标题”:[
],
“附件”:[
],
“phpmailer\u异常\u代码”:2
}
}
}
如果我降低了WP Mail SMTP插件的等级,事情又开始正常工作了。因此,插件肯定会出现问题。也许在我调用WP_Mail()
函数的插件中,WP Mail SMTP的设置尚未加载或类似的情况
任何快速的帮助将非常感谢,因为我有这个代码在生产网站上运行。提前感谢
编辑:只需添加一些详细信息,WP Mail SMTP测试电子邮件运行正常!无法实例化邮件功能
错误意味着您没有安装本地邮件服务器,但只有在使用邮件()时才会发生此错误
–如果您使用SMTP,它将不适用。因此,听起来您的怀疑是正确的–由于某种原因,wp_邮件的配置没有加载,或者SMTP插件没有按预期的方式运行。没关系。我在wp mail SMTP支持论坛上发布了帖子,但没有得到任何响应。我发现phpmailer
对象我的插件中没有保存修改过的设置。所以这是我实现的工作,只是为了让事情顺利进行,尽管我知道这不是最好的解决方案
我在插件的init中放置了以下操作:
/**
* Reconfigure SMTP setting to make WP MAIL SMTP plugin work
*/
add_action( 'phpmailer_init', 'reconfigure_smtp' );
function reconfigure_smtp( $phpmailer ) {
$SMTPhost = get_option('smtp_host');
$SMTPport = get_option('smtp_port');
$FromEmail = get_option('mail_from');
$FromName = get_option('mail_from_name');
$phpmailer->isSMTP();
$phpmailer->Host =$SMTPhost;
$phpmailer->Port = $SMTPport;
$phpmailer->From = $FromEmail;
$phpmailer->FromName = $FromName;
}
这只是获取WP MAIL SMTP存储的选项,然后重新配置phpmailer实例。这只是迫切需要尽快解决问题的结果。您能建议一个可能的解决方案吗?插件显然有问题,因此我建议您联系插件的作者。