0
WordPress的電子郵件形式WordPress的電子郵件形式
大家好
我一直在使用這種電子郵件的形式在多家網站和它總是奏效。
我想在一個WordPress站點使用它,但它不會
有什麼明顯的原因,這種方法不會在WordPress站點工作。
我需要一個電子郵件表單,它不會重新加載聯繫頁面,因爲表單位於底部。
HTML
<form action="#" id="contact_form">
<input type="text" id="name" placeholder="Name:">
<input type="text" id="email" placeholder="Email:">
<textarea id="message" rows="8" cols="40" placeholder="Message:"></textarea>
<input type="submit" id="submit"/>
<div id="status">
<p></p>
</div>
</form>
jQuery的
$('#submit').click(function(){
//
var nameVal = $('#contact_form #name').val();
var emailVal = $('#contact_form #email').val();
var messageVal = $('#contact_form #message').val();
//
$.post('/contact_form.php', {name: nameVal, email: emailVal, message: messageVal}, function(data){
$("#status p").html(data);
$("#status p").show().fadeOut(3500);
if(data.indexOf('Thank You')==0) {document.forms[0].reset();}
});
})
PHP
$errors = array();
$required_fields = array('name','email','message');
foreach($required_fields as $fieldname){
if(!isset($_POST[$fieldname]) || empty($_POST[$fieldname])){
$errors[] = $fieldname;
}
}
if(empty($errors)){
$name_field = Trim(stripslashes($_POST['name']));
$name = explode(' ', $name_field);
$firstname = ucfirst($name[0]);
$email_field = Trim(stripslashes($_POST['email']));
$message = Trim(stripslashes($_POST['message']));
//
$to = "[email protected]";
$subject = "Email from Website";
$body = "From: $name_field\n E-Mail: $email_field\n Message:\n $message";
//
mail($to, $subject, $body);
echo "Thank You $firstname";
}else{
echo "Please complete all.";
}
--- UPDATE ---
我有我的一部分現在工作。
部分問題是jQuery找不到php。
我在wp-conntent裏創建了一個'code'文件夾,並把php放在那裏,jquery看起來像這樣。
$j.post('wp-content/code/contactEngine.php', { theName:nameVal, theEmail:emailVal, theMessage:messageVal }, function(data){
現在我得到了返回的數據形式的PHP文件,但電子郵件沒有發送。
這樣不是會在WP
mail($to, $subject, $body);
究竟哪些方法無效?你有錯誤嗎?日誌文件說什麼? – uncovery 2013-03-21 08:05:31
爲什麼不去爲WordPress的「聯繫表單7」插件。這將滿足您的所有要求。 – Harpreet 2013-03-21 08:08:40
揭祕 - 我沒有得到電子郵件或數據形式的PHP文件。我在哪裏可以找到日誌文件? – ttmt 2013-03-21 08:33:01