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 phpmyadminde 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.phpyi açıp $data['banner_images'][$key][] = array( satırını buluyoruz.
Bu satırdaki titleyi kaç tane ekleyeceksek sqle 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 sqldeki 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ı <tdden </td>ye kadar kopyalayıp sqldeki eklediğimiz sutun kadar ekleme sağlıyoruz.
Ardından;
admin/model/design/banner.phpyi 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 sqldeki 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>