我有一个联系表单,它来自ajax参数并使用它们发送电子邮件。 该函数位于我的子主题的functions.php中,为二十五:
// Contact form Ajax
add_action('wp_ajax_nopriv_submit_contact_form', 'submit_contact_form');
function submit_contact_form(){
if(isset($_POST['email'])) {
$email = $_POST['email'];
$email_to = "wawd@company.pro";
$email_subject = "You have a new email from $email via yyy.com website";
$message = $_POST['text'];
if( wp_mail( $email_to, $email_subject, $message ) ) {
// the message was sent...
echo 'The test message was sent. Check your email inbox.';
} else {
// the message was not sent...
echo 'The message was not sent!';
};
// wp_mail( $email_to, $email_subject, $message );
header("Content-Type: application/json", true);
echo json_encode( array("AJAX" => "Success") );
die();
}
}
error_reporting(E_ALL);
ini_set("display_errors", 1);
我收到the message was not sent! AJAX: "Success"
的回复。
为什么我的功能不起作用?
我必须在我的php文件中包含一些内容吗?
我var_dumped我从ajax获得的参数,在状态代码为Status Code:200 OK
的响应中都显示正常。
答案 0 :(得分:0)
我安装了一个名为" PostFix"它负责从Ubuntu服务器(我使用的服务器Linux)发送电子邮件,它解决了这个问题!