最近hostingprovider已禁用其客户发送表单与php mail().用户可以提交一个表单看起来像这样,这总是工作正常.我如何更改此邮件()发送与wp_mail().我已经安装WP邮件SMTP这是工作,但这是一个自定义的形式,必须更改发送与wp_mail()而不是mail().谢谢!
〈?php
session_start();
if(!isset($_SESSION['set']))
{
$_SESSION['set'] = 1;
$oConnect = mysqli_connect('localhost', 'userlogin', 'userpass');
$content = str_replace(array_keys($replace), array_values($replace), $content);
//DATA pulled from DB
$to = $_POST['txt_email'];
$subject = 'Your request';
$headers = "From: info@domainexample.com\r\n";
$headers .= "Bcc: info@domainexmaple.com\r\n";
$headers .= "Reply-To: info@domainexample.com\r\n";
$headers .= "MIME-Version: 1.0\r\n";
$headers .= "Content-Type: text/html; charset=ISO-8859-1\r\n";
// send mail
if(!empty($to)){
mail($to,$subject,$content,$headers);
}
}
?〉'''
1条答案
按热度按时间nbewdwxp1#
问题解决了!wp_mail不起作用的原因,因此WP Mail SMTP等插件也不起作用,是因为wp-load没有被调用。如果没有调用,那么只有mail()函数起作用,而不是wp_mail()。
要解决这个问题,只需将此直接放在〈?php之后:
require_once(“../wp-load.php”);
通过添加这个,如果您使用wp_mail($to,$subject,$headers),则会调用wp_mail函数而不是mail();