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实例。这只是迫切需要尽快解决问题的结果。

您能建议一个可能的解决方案吗?插件显然有问题,因此我建议您联系插件的作者。