Şablon şu şekilde:
<?php
/*
Template Name: İletişim
*/
// Güvenlik
$sayi1 = rand(1,10);
$sayi2 = rand(1,10);
$cevap = (string)($sayi1+$sayi2);
$spam_kontrol = $_POST['spam-kontrol'];
if ( 'POST' == $_SERVER['REQUEST_METHOD'] && !empty( $_POST['gonder'] ) && $_POST['gonder'] == '1' ) {
if ( $_POST['isminiz'] && $_POST['eposta'] && $_POST['konu'] && $_POST['mesaj'] ) {
if ( !$_POST['isminiz'] ) {
$error = 'Adınızı girmelisiniz.';
} elseif ( !$_POST['eposta'] || !preg_match("/^[[:alnum:]][a-z0-9_.-]*@[a-z0-9.-]+\.[a-z]{2,4}$/i", trim($_POST['eposta'])) ) {
$error = 'Geçerli bir e-posta adresi girmelisiniz.';
} elseif ( !$_POST['konu'] ) {
$error = 'Konu başlığını girmelisiniz.';
} elseif ( !$_POST['mesaj'] ) {
$error = 'Mesaj alanı boş bırakılamaz.';
} elseif ( empty($spam_kontrol) ) {
$error = 'Spam kontrolünden geçmek için soruyu cevaplamalısınız.';
} elseif ( !empty($spam_kontrol) ) {
if ( $spam_kontrol === $cevap ) {
$isim = trim($_POST['isminiz']);
$eposta = trim($_POST['eposta']);
$konu = trim($_POST['konu']);
$mesaj = trim($_POST['mesaj']);
$gonderilecek_eposta = get_option('admin_email');
$email_konu = '[ILETISIM FORMU] : ' . $isim . '';
$headers = "From: ".$isim."<".$gonderilecek_eposta.">\r\n";
$headers .= "Reply-To: ".$konu."<".$eposta.">";
$govde = "İletişim formu aracılığıyla size bir e-posta gönderildi. \n\n";
$govde .= "Gönderen: ".$isim."\n\n";
$govde .= "E-posta: ".$eposta."\n\n";
$govde .= "Konu: ".$konu."\n\n";
$govde .= "Mesaj: ".$mesaj."\n\n";
$wp_posta = wp_mail($gonderilecek_eposta, $email_konu, $govde, $headers);
$emailSent = true;
$basarili = "Mesajınız yöneticiye ulaşmıştır. İlginiz için teşekkür ederiz.";
} else {
$error = 'Spam kontrolünden geçmek için soruyu doğru cevaplamalısınız.';
}
}
} else {
$error = 'Tanımlanamayan bir hata oluştu.';
}
}
get_header(); ?>
<div id="sol-icerik">
<div class="icerik-kapsayici">
<div class="yazi-icerigi">
<h1 class="yazi-basligi-ozel"><?php the_title(); ?></h1>
<?php the_content(); ?>
<p>
Zorunlu alanlar (<span class="filtre-renkli">*</span>) ile işaretlenmiştir.
</p>
<?php if ( $wp_posta ) : ?>
<div class="filtre-renkli yaz-ort">
<p>
<strong>
<?php echo $basarili; ?>
</strong>
</p>
</div>
<?php endif; ?>
<?php if ( $error ) : ?>
<div class="filtre-renkli yaz-ort">
<p>
<strong>
<?php echo $error; ?>
</strong>
</p>
</div>
<?php endif; ?>
<form action="<?php the_permalink(); ?>" method="post">
<div class="hesabim-input-baslik">
<label for="isminiz">İsminiz <span class="filtre-renkli">*</span></label>
<input name="isminiz" id="isminiz" type="text" class="mekan-input" value="<?php echo htmlspecialchars_decode( $_POST['isminiz'] ); ?>" alt="Adını giriniz"/>
</div>
<div class="hesabim-input-baslik">
<label for="eposta">E-posta <span class="filtre-renkli">*</span></label>
<input name="eposta" id="eposta" type="text" class="mekan-input" value="<?php echo htmlspecialchars_decode( $_POST['eposta'] ); ?>" alt="E-posta adresinizi giriniz"/>
</div>
<div class="hesabim-input-baslik">
<label for="konu">Konu <span class="filtre-renkli">*</span></label>
<input name="konu" id="konu" type="text" class="mekan-input" value="<?php echo htmlspecialchars_decode( $_POST['konu'] ); ?>" alt="Konu başlığını giriniz (<em>Premium üyelik</em> vs)"/>
</div>
<div class="hesabim-input-baslik">
<label for="mesaj" class="yandan-carkli" title="İletişime geçme sebebinizin ayrıntılarını giriniz">Mesaj <span class="filtre-renkli">*</span></label>
<div class="mekan-textara"></div>
<textarea name="mesaj" id="mesaj" rows="15"><?php echo htmlspecialchars_decode( $_POST['mesaj'] ); ?></textarea>
</div>
<div class="hesabim-input-baslik">
<label for="spam-kontrol" style="display:block">Spam Kontrol <span class="filtre-renkli">*</span></label>
<input class="hesabim-input-kucuk" name="spam-kontrol" type="text" id="spam-kontrol" value="" style="display:inline" /><span class="filtre-renksiz" style="display:inline; margin-left:5px;"><?php echo $sayi1 . ' + ' . $sayi2 . ' = ?'; ?></span>
</div>
<div class="temizle"></div>
<p>
<input type="hidden" name="gonder" value="1" id="gonder">
<input type="submit" class="kirmizi-button saga-yasla" value="Gönder" style="margin-left:5px;" /><input type="reset" class="sari-button saga-yasla" value="Temizle" />
</p>
<div class="temizle"></div>
</form>
</div>
</div>
</div>
<?php get_sidebar(); ?>
<?php get_footer(); ?>Eğer spam kontrol inputu boş ise doğru hatayı alıyorum ancak, sorunun cevabını doğru girince de yanlış girince de eşleşmedi hatası geliyor?