WordPress Eklentisiz İletişim Sayfası Nasıl Yapılır ?
Giriş
WordPress Eklentisiz İletişim Sayfası nasıl yapılır ? Bir eklentisiz konumuza daha hoş geldiniz. Neden eklentisiz olduğunu kısaca bahsedeyim çünkü özelleştirilebilir eklentiler kadar yormaz 🙂
Gelişme
Öncelikle arkadaşlar iletisim.php şeklinde bir sayfa oluşturun ve aşağıda ki kodu bu sayfanın içerisine yapıştırın ve tema klasörünüzün içerisine atın.Daha sonra yeni sayfa oluşturma bölümüne girin ve sağ taraftan sayfa şablonu bölümünden “Contact” sayfasını seçin ve kaydet deyin , iletişim bölümünün üstüne açıklama girmek isterseniz normal sayfaya yazı yazmanız yeterlidir.
Kodlar
<?php
/*
Template Name: İletişim
*/
$cp_question = “5+1 = ?”;
$cp_answer = “6”;
?>
<?php get_header(); ?>
<div class=”icerik”>
<div id=”content”>
<?php if (have_posts()) : ?>
<?php while (have_posts()) : the_post(); ?>
<?php
//validate email adress
function is_valid_email($email)
{
return (eregi (“^([a-z0-9_]|\\-|\\.)+@(([a-z0-9_]|\\-)+\\.)+[a-z]{2,4}$”, $email));
}
function is_valid_user($answer)
{
global $cp_answer;
if ($answer == $cp_answer) { return true; } else { return false;}
}
//clean up text
function clean($text)
{
return stripslashes($text);
}
//encode special chars (in name and subject)
function encodeMailHeader ($string, $charset = ‘UTF-8’)
{
return sprintf (‘=?%s?B?%s?=’, strtoupper ($charset),base64_encode ($string));
}
$cp_name = (!empty($_POST[‘cp_name’])) ? $_POST[‘cp_name’] : “”;
$cp_email = (!empty($_POST[‘cp_email’])) ? $_POST[‘cp_email’] : “”;
$cp_url = (!empty($_POST[‘cp_url’])) ? $_POST[‘cp_url’] : “”;
$cp_ans = (!empty($_POST[‘cp_ans’])) ? $_POST[‘cp_ans’] : “”;
$cp_message = (!empty($_POST[‘cp_message’])) ? $_POST[‘cp_message’] : “”;
$cp_message = clean($cp_message);
$error_msg = “”;
$send = 0;
if (!empty($_POST[‘submit’])) {
$send = 1;
if (empty($cp_name) || empty($cp_email) || empty($cp_message) || empty($cp_ans)) {
$error_msg.= “<p style=’color:#a00′>Gerekli tüm alanları doldurun.</p>\n”;
$send = 0;
}
if (!is_valid_email($cp_email)) {
$error_msg.= “<p style=’color:#a00′>Yanlış Bir Mail Adresi Girdiniz.</p>\n”;
$send = 0;
}
if (!is_valid_user($cp_ans)) {
$error_msg.= “<p style=’color:#a00′>Yanlış Cevap.</p>\n”;
$send = 0;
}
}
if (!$send) { ?>
<?php the_content(”); ?>
<?php echo $error_msg;?>
<form method=”post” action=”<?php echo “http://” . $_SERVER[‘HTTP_HOST’] . $_SERVER[‘REQUEST_URI’]; ?>” id=”contactform”>
<div style=”float:left;”>İsim</div><div style=”font-size:8px;color:red;float:left;padding-left:5px;”>(zorunlu)</div><div class=”temizlik”></div><br/>
<input type=”text” class=”textbox” id=”cp_name” name=”cp_name” value=”<?php echo $cp_name ;?>” /><br/><br/>
<div style=”float:left;”>Mail Adresiniz</div><div style=”font-size:8px;color:red;float:left;padding-left:5px;”>(zorunlu)</div><div class=”temizlik”></div><br/>
<input type=”text” class=”textbox” id=”cp_email” name=”cp_email” value=”<?php echo $cp_email ;?>” /><br/><br/>
Websiteniz<br/>
<input type=”text” class=”textbox” id=”cp_url” name=”cp_url” value=”<?php echo $cp_url ;?>” /><br/><br/>
<div style=”float:left;”><?php echo $cp_question; ?></div><div style=”font-size:8px;color:red;float:left;padding-left:5px;”>(zorunlu)</div><div class=”temizlik”></div><br/>
<input type=”text” class=”textbox” id=”cp_ans” name=”cp_ans” value=”<?php echo $cp_ans ;?>” /><br/><br />
<div style=”float:left;”>Mesajınız</div><div style=”font-size:8px;color:red;float:left;padding-left:5px;”>(zorunlu)</div><div class=”temizlik”></div><br/>
<textarea id=”cp_message” name=”cp_message” cols=”60%” rows=”10″><?php echo $cp_message ;?></textarea><br/>
<input type=”submit” id=”submit” name=”submit” value=”Gönder” />
</form>
<?php
} else {
$displayName_array = explode(” “,$cp_name);
$displayName = htmlentities(utf8_decode($displayName_array[0]));
$header = “MIME-Version: 1.0\n”;
$header .= “Content-Type: text/plain; charset=\”utf-8\”\n”;
$header .= “İletişim Talebi:” . encodeMailHeader($cp_name) . “<” . $cp_email . “>\n”;
$email_subject = “[” . get_settings(‘blogname’) . “] ” . encodeMailHeader($cp_name);
$email_text = “Yollayan: ” . $cp_name . “\n” .
“E-posta Adresi: ” . $cp_email . “\n” .
“Site Adresi: ” . $cp_url . “\n\n” .
$cp_message;
if (@mail(get_settings(‘admin_email’), $email_subject, $email_text, $header)) {
echo “<h2>Teşekkürler ” . $displayName . “,</h2><p>İletişim talebin elime ulaştı en kısa sürede yanıt vereceğim!</p>”;
}
}
?>
<?php endwhile; ?>
<?php endif; ?>
</div></div>
<?php get_sidebar(); ?>
<?php get_footer(); ?>
Yorumlar (0)