• 12-10-2021, 17:26:53
    #1
    Merhaba opencartta ufak bir yönlendirme işi yapmaya çalışıyorum bir süredir deneme yapmama rağmen sonuç alamadım.
    Eğer sepette 1 veya 1den fazla ürün ekli ise, kullanıcı sepete girdiği zaman otomatik checkout/ödeme sayfasına yönlendirme yapacak, yani sepetim görüntülenmeyecek. fakat sepete herhangi bir ürün eklenmemiş ise o zaman sepetiniz boş şeklinde görüntülenmeye devam edecek.
    Bunu yapmaya çalışıyorum ama başaramadım.
    php sayfa içi yönlendirme ile şöyle bir şey denedim: ("eğer sepet sayfasında ürün varsa yönlendir, yoksa yönlendirme" şeklinde yapmaya çalıştım.)


    <?php if (!$product) { ?>
    header('Location: http://siteadi/odeme');
    exit();
    <?php } else { ?>
    
    Ürün yoksa çalışacak kısım.
    
    
    <?php } ?>
    Yani bu sayfa içi yönlendirmeyi nasıl yapabilirim. Ben saçmalamışta olabilirim.
    Bilen arkadaşlar yardımcı olursa çok sevinirim, teşekkürler.
  • 12-10-2021, 17:29:28
    #2
    <?php if (!empty($product)) {
    header('Location: http://siteadi/odeme');
    exit();
    } else { ?>

    Ürün yoksa çalışacak kısım.


    <?php } ?>
  • 12-10-2021, 17:30:02
    #3
    şunu denermisiniz ve product değişkeninin çıktısı nedir?
  • 12-10-2021, 17:54:33
    #4
    if (count($product) == 0){ header('Location: http://siteadi/odeme'); }
  • 14-10-2021, 10:04:42
    #5
    Yardımcı olan arkadaşlara teşekkür ederim. Biraz uğraştan sonra şu şekilde çözdüm, ihtiyacı olan kullanabilir.
    Opencart 2.3.0.2 için çözüm, diğer sürümleri denemedim.
    Controller içerisinde ki cart.php dosyasında
    public function index() {
    den sonra aşağıdaki kodu eklerseniz soruna çözüm bulabilirsiniz, açıklamalı şekilde yazıyorum.

    // Yönlendirme Kodu Başlangıç
    // Eğer sepette en az 1 ürün varsa checkout sayfasına otomatik yönlenecek.
    // Sepette ürün yoksa cart/sepet sayfası görünecek boş uyarısı verecek
    // Kullanıcı girişi yapılmış olması isteniyorsa '!$this->customer->isLogged() &&' değişkeni eklenebilir
    if (!$this->cart->hasProducts() && empty($this->session->data['vouchers']) ) {
    // buraya yönlendirme kodu yazılıp eğer sepet boşsa farklı sayfaya gidilebilir. örnek
    // $this->response->redirect($this->url->link('account/account'));
    // boş bırakılırsa cart/sepet sayfası açılır
    } else {
    $this->response->redirect($this->url->link('checkout/checkout'));
    }
    // Yönlendirme Kodu Bitiş
    Konu havada kalmasın.
    Yardımcı olmaya çalışanlara tekrar teşekkürlerimi iletiyorum.
    Saygılar.