-
Üyelik
06.11.2013
-
Yaş/Cinsiyet
38 / E
-
Meslek
Esnaf
-
Konum
Trabzon
-
Ad Soyad
M** K**
-
Mesajlar
1681
-
Beğeniler
631 / 817
-
Ticaret
1, (%100)
Herkese merhaba daha önceden yapmış olduğum
Opencart 2.x Her Bir Kategoriye Farklı Banner Eklemek modifikasyonunu bu sefer iletişim sayfasında yapacağım. Şuanda
[B]buradaki örnekteki [/B]gibi.
Başlıca özellik
1-) Caorusel olarak afişlerden eklenen resimleri gösterilemsi
2-) Örneke magnific zoom ile yapmıştım. Photobox ile yapmayı düşünüyorum.
KAYNAK | | İNDİR : E-TİCARETDERSLERİ
şuan aklımdakiler bunlar sizlerinde tavsiysini bekliyorum.
Herkese merhaba arkadaşlar sizlere bugün opencart 2.3x versiyonları için düzenlediğim bir modifikasyonu paylaşacağım. Bu mdifikasyonumuzda adminde afiiş kısmından tanımlamış oluğumuz bannerlarımızı iletişim sayfalarımızda gösterme amaçlıdır.Böylelikle her oluşturduğumuz iletişim sayfasında isteğimize bağlı olarak istediğimiz banner afişlerimizi ekleyebiliriz istersekte durumunu pasif yaparak sadece iletişim sayfası özelliklerini kaydedebiliriz. Ayrıca kendisine aitoluşturulan tab sayaesinde ayrı bir kısımda düzenleme imkanı sunmaktadır.Katalog kısmında gösterimi ise slaytshow gösterimi gibidir, tabii isteğe görede kodlarında oynama yaparaktan farklı gösterimlerde sağlanabileceksiniz.
Opencart 2.3x Her Bir İletişim Sayfasına Farklı Banner Eklemek Modifikasyonun Kurulumu
BU modifikasyon admin yönetimli olduğundan hem admn hemde katalog kısmında düzenlemeler yapacağız.Admin tarafından yeni alanlar ekleneceğinen model dosyasııda da müdahale eceğiz ve burada oluşturacağımız sql sorgulama sayesinde veritabanımızda alanlarda oluşturulmaktadır. Bundan ötürü işlemelere başlamadan önceya veritabanınızı yedekleyiniz yada localhost ta işlemyapınız.
İlk iş tpl dosysını düzenleyelim ve burada taboluşturarak banner ekleme kısmını farklıbir bölüme alalım.
Dosyamızı Açalım: admin/view/template/catalog
informtion_form.tpl
Bulalım :
Alt Satıra Ekleyelim :
Bulalım :
Üst Satıra Ekleyelim :
.
Admin tpl işlemlerimiz bitti dil dosyasından tanımlamalarımıza geldi
Dosyamızı Açalım :admin/language/english/catalog
information.php
Uygun Yere EKleyelim :
// Yeni Banner
$_['entry_banner'] = 'Banner';
$_['entry_width'] = 'Width';
$_['entry_height'] = 'Height';
$_['tab_banner'] = 'Banner';
$_['help_banner'] = 'Kategoride Gözükecek Banner';
$_['help_height'] = 'Banner Boyutu Girilen Alan. Bu Alan Zorunludur !';
$_['help_width'] = 'Banner Genişliği Girilen Alan. Bu Alan Zorunludur !';
Şİmdi Sıra Kontroller dosyasımızdan tanımlamalara geldi
Dosyamızı Açalım : admin/controller/catalog
information.php
Bulalım :
$data['entry_status'] = $this->language->get('entry_status');
Alt Satıra EKleyelim :
//banner dill
$data['entry_banner'] = $this->language->get('entry_banner');
$data['entry_width'] = $this->language->get('entry_width');
$data['entry_height'] = $this->language->get('entry_height');
Bulalım :
$data['tab_design'] = $this->language->get('tab_design');
Alt Satıra Ekleyelim :
//banner dil 2
$data['tab_banner'] = $this->language->get('tab_banner');
$data['help_banner'] = $this->language->get('help_banner');
$data['help_height'] = $this->language->get('help_height');
$data['help_width'] = $this->language->get('help_width');
//banner hata
if (isset($this->error['width'])) {
$data['error_width'] = $this->error['width'];
} else {
$data['error_width'] = '';
}
if (isset($this->error['height'])) {
$data['error_height'] = $this->error['height'];
} else {
$data['error_height'] = '';
}
// banner hata bitimi
Bulalım :
if (isset($this->request->post
Üst Satıra Ekleyelim :
// banner data pos
if (isset($this->request->post['banner_status'])) {
$data['banner_status'] = $this->request->post['banner_status'];
} elseif (!empty($information_info)) {
$data['banner_status'] = $information_info['banner_status'];
} else {
$data['banner_status'] = '';
}
if (isset($this->request->post['banner_id'])) {
$data['banner_id'] = $this->request->post['banner_id'];
} elseif (!empty($information_info)) {
$data['banner_id'] = $information_info['banner_id'];
} else {
$data['banner_id'] = '';
}
$this->load->model('design/banner');
$data['banners'] = $this->model_design_banner->getBanners();
if (isset($this->request->post['width'])) {
$data['width'] = $this->request->post['width'];
} elseif (!empty($information_info)) {
$data['width'] = $information_info['width'];
} else {
$data['width'] = '150';
}
if (isset($this->request->post['height'])) {
$data['height'] = $this->request->post['height'];
} elseif (!empty($information_info)) {
$data['height'] = $information_info['height'];
} else {
$data['height'] = '150';
}
// banner data pos bitiş
Şimdi Sıra son kısım olan validate bölümüne geldi
Bulalım :
if (utf8_strlen($this->request->post['keyword']) > 0) {
Üst Satıra EKleyelim :
// banner data validate
if (!$this->request->post['width']) {
$this->error['width'] = $this->language->get('error_width');
}
if (!$this->request->post['height']) {
$this->error['height'] = $this->language->get('error_height');
}
// banner data validate bitiş
[b]
[b]KOntroller dosyasında işimiz bitti. Veritabanında tablo oluşturma ve sql sorgulamalara geldi
Dosyamızı Açalım : admin\model\catalog
information.php
Bulalım :
[/b]
public function editInformation($information_id, $data) {
[b]Alt Satıra Ekleyelim:
[/b]
$exist = $this->db->query("SHOW COLUMNS FROM `" . DB_PREFIX . "category` WHERE Field = 'banner_status'");
if (count($exist->row) == 0) {
$this->db->query("ALTER TABLE `" . DB_PREFIX . "category`
ADD COLUMN `banner_status` VARCHAR(64) CHARACTER SET utf8 COLLATE utf8_bin NOT NULL,
ADD COLUMN `banner_id` VARCHAR(64) CHARACTER SET utf8 COLLATE utf8_bin NOT NULL,
ADD COLUMN `width` VARCHAR(64) CHARACTER SET utf8 COLLATE utf8_bin NOT NULL,
ADD COLUMN `height` VARCHAR(64) CHARACTER SET utf8 COLLATE utf8_bin NOT NULL
");
}
[b]Bulalım :
Update Kısmında Bulalaım
[/b]
(int)$data['bottom'] : 0) . "',
[b]Virgülden sonrasına yanına ekleyelim :
[/b]
banner_status = '" . (int)$data['banner_status'] . "', width = '" . (int)$data['width'] . "', banner_id = '" . (int)$data['banner_id'] . "',height = '" . (int)$data['height'] . "',
[b]Bu Sefer İlk Insert Kısmında Bulalım :
[/b]
(int)$information_id . "',
[b]Virgülden sonrasına yanına ekleyelim :
[/b]
banner_status = '" . (int)$data['banner_status'] . "', width = '" . (int)$data['width'] . "', banner_id = '" . (int)$data['banner_id'] . "', height = '" . (int)$data['height'] . "',
[b]Admin tarafından işlemlerimiz bitti şimdi sıra katalog kısmına geldi
Dosyamızı Açalım : catalog\controller\product
information.php
Bulalım :
[/b]
$information_info = $this->model_catalog_information->getInformation($information_id);
[b]Alt Satıra Ekleyelim :
[/b]
$this->document->addScript('catalog/view/javascript/photobox/photobox.js');
$this->document->addStyle('catalog/view/javascript/photobox/photobox.ie.css');
$this->document->addStyle('catalog/view/javascript/photobox/photobox.css');
$this->document->addStyle('catalog/view/javascript/jquery/owl-carousel/owl.carousel.css');
$this->document->addScript('catalog/view/javascript/jquery/owl-carousel/owl.carousel.min.js');
[b]Bulalım :
[/b]
if ($information_info) {
[b]Üst Satıra Ekleyelim :
[/b]
$this->load->model('design/banner');
$this->load->model('tool/image');
$data['banners'] = array();
$results = $this->model_design_banner->getBanner($information_info['banner_id']);
foreach ($results as $result) {
if (is_file(DIR_IMAGE . $result['image'])) {
$data['banners'][] = array(
'title' => $result['title'],
'link' => $result['link'],
'image' => $this->model_tool_image->resize($result['image'], $information_info['width'], $information_info['height'])
);
}
}
$data['width'] = $information_info['width'];
$data['banner_id'] = $information_info['banner_id'];
$data['height'] = $information_info['height'];
$data['banner_status'] = $information_info['banner_status'];
[b]Şİmdi Son işlem tpl dosyamıza geldi ve bitiriyoruz.
Dosyamızı Açalım : catalog\view\theme\default\template\information
information.tpl
Bulalım :
[/b]
[b]Alt Satıra Ekleyelim :
[/b]
0) { ?>
<script></script>
<script></script>
[b]Elhamdulillah Bitiii :=))))
[/b]
1 kişi bu mesajı beğendi.