In the page:
<table>
<tr>
<td colspan="2" align="center">
<input value="Nome" title="Nome" id="nome" type="text" />
</td>
</tr>
<tr>
<td colspan="2" align="center">
<input value="E-mail" title="E-mail" id="email" type="text" />
</td>
</tr>
<tr>
<td colspan="2" align="center">
<textarea id="mensagem" title="Mensagem">Mensagem</textarea>
</td>
</tr>
<tr>
<td align="left" valign="top">
<span class="errms"> </span>
<span id="loading">Enviando...</span>
</td>
<td width="93"><a class="btn-enviar">Enviar</a></td>
</tr>
</table>
<script type="text/javascript">
$(document).ready(function(){
$('.btn-enviar').click(function() {
var nome = $('#nome').val();
var email = $('#email').val();
var mensagem = $('#mensagem').val();
getstr = "nome="+nome+"&email="+email+"&mensagem="+mensagem;
var content_ready = encodeURI(getstr);
if(nome == "" || nome == "Nome"){$('.errms').text("Favor inserir o nome.");}
else if(email == "" || email == "E-mail"){$('.errms').text("Favor inserir o e-mail.");}
else if(email.indexOf("@") == -1 || email.indexOf(".") == -1) {$('.errms').text("E-mail incorreto.");}
else if(mensagem == "" || mensagem == "Mensagem"){$('.errms').text("Favor inserir a mensagem.");}
else {
$.ajax({
type: "post",url: "<?php bloginfo('wpurl'); ?>/wp-admin/admin-ajax.php",data: "action=sendmail&"+content_ready,
beforeSend: function(){$('.errms').text(""); $("#loading").fadeIn('1000');},
success: function(html){
$("#form-content").html(html);
}
}); //close $.ajax(*/
}
}); //close click(
}); //close $(
</script>
In functions.php
<?php
function implement_ajax() {
if(isset($_POST['nome']) && isset($_POST['mensagem']) && isset($_POST['email']))
{
$success = false;
function cleanstr($str){
return preg_replace('/<(.*)\s+(\w+=.*?)>/', '', $str);
}
$mensagem = isset($_POST['mensagem']) ? cleanstr($_POST['mensagem']):"";
$nome = isset($_POST['nome']) ? cleanstr($_POST['nome']):"";
$email = isset($_POST['email']) ? cleanstr($_POST['email']):"";
// sending
$to = "address@gmail.com";
$subject = "Contato site";
$message = "
<html>
<body>
<p>$mensagem</p>
<p>$nome<br />$email<br />
</body>
</html>
";
$headers = "MIME-Version: 1.0\n";
$headers .= "Content-type: text/html; charset=utf-8\n";
$headers .= "From: $nome <$email>\n";
$headers .= "Bcc: bccaddress@gmail.com\n";
$headers .= "Return-Path: $email\n";
// send email
if($mensagem != "" && $nome != "" && $email != ""){
if(!mail($to, $subject, $message, $headers ,"-r t.diezel@peppernet.com.br")){ // Se for Postfix
$headers .= "Return-Path: t.diezel@peppernet.com.br\n"; // Se "não for Postfix"
$success = mail($to, $subject, $message, $headers );
} else {
$success = true;
}
}
// redirect to success page
if ($success){
echo '<span>Sua mensagem foi enviada. Agradecemos o contato.</span><br /><br />';
}
else{
echo '<span>Houve um erro ao enviar a mensagem. Favor tentar novamente mais tarde.</span>';
}
}
die();
}
add_action('wp_ajax_sendmail', 'implement_ajax');
add_action('wp_ajax_nopriv_sendmail', 'implement_ajax');//for users that are not logged in.
?>