Merhabalar bugün sizlere  Opencart Talep Formu nasıl yapılır onu aktaracağım.

Neden Gerekli?

Opencart ile ürün satışı yapıyorsunuz ve sitenize bir kullanıcı gelip ürün aramak istedi. Fakat aradığı ürün sizin sitenizde bulamadı. Bu durumda ziyaretçimizin bilgilerini alarak, bu ürünün eklenmesinin ardından ziyaretçiye mesaj atabilir veya arayabilirsiniz.

Opencart Talep Formu işlem adımları

1.


catalog > controller > information > talep.php

dosyasını oluşturalım.

2. talep.php dosyasını açalım

class ControllerInformationTalep extends Controller {
public function index() {
$this->load->language('information/contact');
$this->document->setTitle($this->language->get('heading_title'));

try {
$this->load->language('information/contact');
$this->document->setTitle($this->language->get('heading_title'));

if (($this->request->server['REQUEST_METHOD'] == 'POST')) {
//                echo "
<pre>";
//                print_r($this->config->get('config_mail_smtp_hostname'));
//                echo "</pre>
";
$mail = new Mail();
$mail->protocol = $this->config->get('config_mail_protocol');
$mail->parameter = $this->config->get('config_mail_parameter');
$mail->smtp_hostname = $this->config->get('config_mail_smtp_hostname');
$mail->smtp_username = $this->config->get('config_mail_smtp_username');
$mail->smtp_password = html_entity_decode($this->config->get('config_mail_smtp_password'), ENT_QUOTES, 'UTF-8');
$mail->smtp_port = $this->config->get('config_mail_smtp_port');
$mail->smtp_timeout = $this->config->get('config_mail_smtp_timeout');

$mail->setTo($this->config->get('config_email'));
$mail->setFrom($this->request->post['email']);
$mail->setSender(html_entity_decode($this->request->post['adi_soyadi'], ENT_QUOTES, 'UTF-8'));
$mail->setSubject('Ürün Arama', $this->request->post['adi_soyadi']);
$mail->setText($this->request->post['adi_soyadi'] . ' isimli müşteri sitemizde :' . $this->request->post['aranilan_urun'] . ' isimli ürünü aratmış ve bulamamıştır. Kendisi bu ürünü talep etmektedir. Telefon numarası : ' . $this->request->post['telefon'] . ' ve email adresi : ' . $this->request->post['email']);
$mail->send();
$this->response->redirect($this->url->link('information/contact/success'));
}
}
catch (Exception $e)
{
print_r($e);
}
}
}

3. view > theme > temanız > product > search.tpl

$text_empty kodumuzun hemen üst kısmına
<form action="<?php echo $action; ?>" method="post" enctype="multipart/form-data" class="form-horizontal">
          <div class="bordered_content">
              <div class="padded">
                  <div class="row">
                      <div class="col-md-12"><h3>Bu ürünü sitemizde görmek istermisiniz?</h3></div>
                      <div class="col-sm-3 form-group">Adınız Soyadınız</div>
                      <div class="col-sm-9 form-group"><input type="text" name="adi_soyadi" placeholder="Adınız Soyadınız" class="form-control"></div>
                  </div>
                  <div class="row">
                      <div class="col-sm-3 form-group">Aradığınız Ürün</div>
                      <div class="col-sm-9 form-group"><input type="text" name="aranilan_urun" placeholder="Aradığınız Ürün" value="<?php echo $search; ?>" class="form-control"></div>
                  </div>
                  <div class="row">
                      <div class="col-sm-3 form-group">Telefon / Email</div>
                      <div class="col-sm-4 form-group"><input type="text" name="telefon" value="" placeholder="Telefon" class="form-control"></div>
                      <div class="col-sm-5 form-group"><input type="text" name="email" value="" placeholder="Email" class="form-control"></div>
                  </div>
                  <div class="row">
                      <div class="col-sm-3 form-group pull-right">
                          <button type="button" class="btn btn-block btn-success btn-sm">Talep Et</button>
                      </div>
                  </div>
              </div>
          </div>
      </form>

kodlarını yapıştırın.

4. catalog > controller > product > search.php dosyasını açın

$data['action'] = $this->url->link('information/talep', '', 'SSL');

kodunu yapıştırıp kayıt edin.

Yukarıdaki işlemleri sırası ile uygulamanızın ardından, sitenize gelen ziyaretçiler ürün araması yapıp sonuç alamamasının ardından talep formu ile karşılaşacaklardır. Formu doldurup göndermelerinin ardından tarafınıza mail olarak talep formu ulaşacaktır.