• 28-10-2010, 15:14:56
    #1
    Alttaki php kodunu contact.php olarak ftpden kullandığınız temanın içine atın..
    Wp Admin panelinden İletişim başlıklı yeni bir sayfa ekleyin (içerik yazmayın sadece başlık)
    Sonra sağ altta Sayfa Özellikleri kısmında resimde gösterildiği gibi seçin



    Demo

     
    <?php
    /*
    Template Name: Contact
    */
    $cp_question = "5+1 = ?";
    $cp_answer = "6";
    ?>
    <?php get_header(); ?>
    <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'><strong>Gerekli tüm alanları doldurun.</strong></p>\n";
           $send = 0;       
          }      
          if (!is_valid_email($cp_email)) {
           $error_msg.= "<p style='color:#a00'><strong>Yanlış Bir Mail Adresi Girdiniz.</strong></p>\n";
           $send = 0;
          } 
          if (!is_valid_user($cp_ans)) {
           $error_msg.= "<p style='color:#a00'><strong>Yanlış Cevap.</strong></p>\n";
           $send = 0;
          }         
         }
         if (!$send) { ?>
     
    <p>İletişim için alttaki formu kullanın  
    * İşaretli alanları doldurmak zorunludur.</p><br />
     
    <?php echo $error_msg;?>
     
    <form method="post" action="<?php echo "http://" . $_SERVER['HTTP_HOST'] . $_SERVER['REQUEST_URI']; ?>" id="contactform">
     
     
                           <strong>İsim</strong>*<br/>
             <input type="text" class="textbox" id="cp_name" name="cp_name" value="<?php echo $cp_name ;?>" /><br/><br/>
             <strong>Mail</strong>*<br/>
             <input type="text" class="textbox" id="cp_email" name="cp_email" value="<?php echo $cp_email ;?>" /><br/><br/>
             <strong>Websiteniz</strong> (Yoksa boş bırakın)<br/>
             <input type="text" class="textbox" id="cp_url" name="cp_url" value="<?php echo $cp_url ;?>" /><br/><br/>
             <strong><?php echo $cp_question; ?> </strong>*<br/>
             <input type="text" class="textbox" id="cp_ans" name="cp_ans" value="<?php echo $cp_ans ;?>" /><br/><br />
             <strong>Mesajınız</strong>*<br/>    
             <textarea id="cp_message" name="cp_message" cols="100%" 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 .= "From:" . encodeMailHeader($cp_name) . "<" . $cp_email . ">\n";
          $email_subject = "[" . get_settings('blogname') . "] " . encodeMailHeader($cp_name);
          $email_text  = "From......: " . $cp_name . "\n" .
             "Email.....: " . $cp_email . "\n" .
             "Url.......: " . $cp_url . "\n\n" .
             $cp_message;
          if (@mail(get_settings('admin_email'), $email_subject, $email_text, $header)) {
           echo "<h2>Hey " . $displayName . ",</h2><p>Mesajınız Gönderildi.</p>";
          }
         }
         ?>
        <?php endwhile; ?>
     
      <?php endif; ?>
    </div>
    <?php get_sidebar(); ?>
    <?php get_footer(); ?>
  • 28-10-2010, 16:41:53
    #2
    Üyeliği durduruldu
    eyv. hocam teşekkürler.
  • 28-10-2010, 18:05:44
    #3
    Üyeliği durduruldu
    teşekkürler.
  • 28-10-2010, 18:21:36
    #4
    admin mail adresini nereye girmemiz gerekiyor?
  • 28-10-2010, 18:24:10
    #5
    admin panelinden, profil ayarlarından
  • 28-10-2010, 18:27:54
    #6
    http://codex.wordpress.org/Function_Reference/wp_mail

    fonksiyonu ile de hazırlanabilir. Hatta bu fonksiyon ile hazırlanmış bir sayfa şablonu hazırlayıp paylaşabilirim. Tabi uygun zamanda
  • 28-10-2010, 18:29:06
    #7
    Hoş. Elinize sağlık.
  • 28-10-2010, 18:42:45
    #8
    Üyeliği durduruldu
    Teşekkürler hocam.
  • 28-10-2010, 19:32:07
    #9
    �leti�im i�in alttaki formu kullan�n * ��aretli alanlar� doldurmak zorunludur.

    �sim*
    Websiteniz (Yoksa bo� b�rak�n)

    Mesaj�n�z*

    türkçe karekter sorunu var onu nasıl halledeceğiz acaba?