• 02-08-2021, 14:51:13
    #1
    Merhaba Arkadaşlar;
    Bugün Opencart teması giydirirken afişler de birden fazla inputa ihtiyaç duydum.
    İşlemi gerçekleştirdikten sonra burada da bilmeyen arkadaşlar için paylaşmak istedim.

    Öncelikle phpmyadmin’de oc_banner_image tablosuna kaç adet başlık ekleyeceksek örneğin 2 ise 2 adet varchar tipinde uzunluğu 64 olacak şekilde eklememizi sağlıyoruz.
    Ardından;
    admincontrollerdesignbanner.php’yi açıp $data['banner_images'][$key][] = array( satırını buluyoruz.
    Bu satırdaki title’yi kaç tane ekleyeceksek sql’e kaç tane eklediğimize göre çoğaltma işlemini sağlıyoruz.
    Sonrasında;
    admin/view/template/design/banner_form. twig dosyasını açıyoruz. {{ entry_title }} bulup bunuda sql’deki eklediğimiz satır kadar çoğaltıyoruz.
    <input type="text" name="banner_image[{{ language.language_id }}][{{ image_row }}][title]" bu satırı bulup bunun tamamını <td’den </td>’ye kadar kopyalayıp sql’deki eklediğimiz sutun kadar ekleme
    sağlıyoruz.
    Ardından;
    admin/model/design/banner.php’yi açarak $this->db->query("INSERT INTO " yazısını bulup, aşağıdaki örnek gibi çoğaltmasını yapıyoruz.
    title = '" . $this->db->escape($banner_image['title']) . "', title2 = '" . $this->db->escape($banner_image['title2']) . "', title3 = '" . $this->db->escape($banner_image['title3']) . "
    Aynı işlemi update kısmı içinde uyguladıktan sonra, foreach ($banner_image_query->rows as $banner_image) { yazısını bulup 'title' => $banner_image['title'], bunu da sql’deki sütunumuz kadar çoğaltıyoruz.
    Admin tarafında işimiz bittikten sonra
    catalog/controller/extension/module/slideshow.php açıyoruz.
    'title' => $result['title'], bulup çoğaltma işlemimizi tamamlıyoruz.
    Ardından;
    catalog/view/theme/default/template/extension/module/slideshow.twig
    açıp, aşağıdaki örnek gibi eklememizi tasarımımıza uygun bir şekilde yaparak bitiriyoruz. Bu sayede Opencart tema giydirmelerinde Sliderlarda fazla yazı kullanmamız gerekiyor bunu bu şekilde çözümleyerek sonuçlandırıyoruz.
    <p>{{ banner.title }}</p>
    <h1>{{ banner.title2 }}</h1>
    <p>{{ banner.title3 }}<br>
  • 03-08-2021, 10:42:09
    #2
    hocam mesajım bulunsun, çok teşekkürler emeğiniz için