Yeni Cevap 
 
Konuyu Değerlendir
  • 1 Oy - 5 Ortalama
  • 1
  • 2
  • 3
  • 4
  • 5
Opencart Order Total(Toplam Sipariş) Modülü Hazırlanması
Yazar Mesaj
duzgun Çevrimdışı
Hizmetinizde
*******

Mesajlar: 2,322
Katılım: Jul 2008
Rep Puanı: 17
Mesaj: #1
Opencart Order Total(Toplam Sipariş) Modülü Hazırlanması
Opencart Order Total(Toplam Sipariş) Modülü Hazırlanması

Order total modülü hazırlanması için opencartda MVC yapısına uygun biçimde en başta gerekli olan dosyaları oluşturmak gerekmektedir. Bu konuyla ilgili olarak extra indirim adlı çok basit bir modül yazalım. En baştan aşağıdaki şekilde bir order total dizin ve dosya sistemi oluşturmalıyız.

1. admin/controller/total/extra.php
2. admin/language/turkish/total/extra.php
3. admin/view/template/total/extra.tpl
4. catalog/model/total/extra.php
5. catalog/language/turkish/total/extra.php

Opencart eklenti yönetimleri admin panelde Eklentiler menüsünde yer almaktadır ve İçerik Modülleri,Kargo Modülleri,Ödeme Modülleri,Sipariş Toplamı olarak adlandırılırlar.

Eklenti yönetimi(admin) denetleyicileri ise /admin/controller/extension/ dizininde bulunmaktadır.
Order total(toplam sipariş) bu dizinde total.php controller(denetleyici) tarafından üretilmektedir.

Order Total denetleyicileri /admin/controller/total/ dizininde bulunmaktadır.

1. admin/controller/total/extra.php -> db'de setting tablosuna girilecek anahtar değer için grup adı "extra" ve yüklenecek key(anahtar),value(değer) ayarlarını ekleme,güncelleme ve düzenleme için oluşturulmuş kodlardır. Yaptığı görev basittir.
$this->load->model('setting/setting'); modeli çağrılarak post edilen bilgiler
$this->model_setting_setting->editSetting('extra', $this->request->post); ile db deki setting tablosuna girilir.

2. admin/language/turkish/total/extra.php -> extra adında order total dil dosyası /admin/controller/extension/total.php eklenti controller tarafından otomatik olarak yüklenir. Bu şekilde toplam sipariş modülleri listelenirken adlarıda dil dosyasında okunup yazılır. Ayrıca admin/controller/total/extra.php controller içinde tekrar dil dosyası manual olarak $this->load->language('total/extra'); şeklinde yüklenerek her modülde modül adını ve özelliklerini belirten tanımlamaları yaparsınız.

3. admin/view/template/total/extra.tpl -> Eklenti mensünden toplam sipariş bölümüne tıkladınız ve listelenen toplam sipariş modüllerini düzenle dediğinizde modülün controller(admin/controller/total/extra.php) ine bağlı olarak template yüklenir. extra.tpl dosyasının içinde yazılan html ve php kodları düzenleme bölümünde listelenen modül özelliklerini post edecek biçimde hazırlanır.

1,2,3 ün görevi sadece db deki setting tablosuna order total modülleriyle ilgili configurasyon anahtar değerlerini girmek,güncellemek,silmektir. Aynı olanyın benzeri diğer e-ticaret sistemlerinde de aynıdır.

Opencartta ayrıca modüllere erişim izni verilmeside gerekmektedir. Bu erişim izni işlemi Sistem menüsünden Kullanıcılar->Kullanıcı Grupları bölümünde listelenen kullanıcıların düzenle bölümüne tıklayarak izin erişimi olan dosyaların işaretlenmesi ile yapılmaktadır. Bu işaretleme sonrası kaydet e tıklanmalıdır.

Opencart modül izni erişimleri db deki user_group tablosunda düzenle dediğiniz kullanıcı grubuna ait erişim izni verilen dosyaların dizi şeklinde oluşturulup serialize yöntemi ile tabloya kaydedilmesi ile depolanmaktadır. Daha sonra unserialize ile izinli modüllerin permission(yetki,izin) kontrolleri yapılabilmektedir. unserialize edilen bilgi dizi değişkene dönüştüğünden dizi içinde dosyanın bulunması erişim izini olduğunu gösterecektir.

Bu bölüme kadar anltılanların hepsi yönetim arayüzü ile ilgilidir.

Opencart config sınıfı ile setting tablosundaki tanımlara ulaşım imkanı vermektedir.

4. catalog/model/total/extra.php
Order total modülleri sort order numaralarına göre yüklenmektedirler.

5. catalog/language/turkish/total/extra.php
extra sipariş toplamı modülünün dil dosyasına aşağıdaki tanımlar yapılır.

PHP Kod:
<?php
$_
['text_extra'] = 'Extra İndirim:';
?>

extra.php içeriğine basit biçimde aşağıdaki kodları ekleyerek çalışma biçimini görebiliriz.

PHP Kod:
<?php
class ModelTotalExtra extends Model {
public function 
getTotal(&$total_data, &$total, &$taxes) {
$this->load->language('total/extra');
if(
$this->currency->format($this->cart->getSubTotal(), 'TRY'FALSEFALSE)>49)
{
$total_data[] = array('title'      => $this->language->get('text_extra'),
'text'       => $this->currency->format($this->cart->getSubTotal()*0.05),
'value'      => $this->cart->getSubTotal()*0.05,
'sort_order' => // yüklenme değil listelenme sırasıdır.
);
$total -= $this->cart->getSubTotal()*0.05;
}
}
}
?>

Örneğimizde TRY cinsinden net fiyatı 49 TL nin üzerindeki ürünlere %5 indirim uygulanmıştır.
Bu modül kullanıma hazır bir modül olmamakla birlikte opencartta order total mantığının nasıl işlediğini anlatabilmek için örneklendirilmiştir.

©duzgun.com Harici yayınlanması yasaktır.
15-03-2011 02:45
Bu kullanıcının gönderdiği tüm mesajları bul Bu mesajı alıntı yap
muratsener Çevrimdışı
Junior Member
**

Mesajlar: 6
Katılım: Nov 2012
Rep Puanı: 0
Mesaj: #2
RE: Opencart Order Total(Toplam Sipariş) Modülü Hazırlanması
Merhaba, size ulaşmaya çalışıyorum ama mesaj atamıyorum. O sebeple buradan ulaştım yardıma ihtiyacım var yardımcı olabilir misiniz ? Teşekkürler
12-11-2012 22:14
Bu kullanıcının gönderdiği tüm mesajları bul Bu mesajı alıntı yap
oki Çevrimdışı
Member
***

Mesajlar: 11
Katılım: Feb 2013
Rep Puanı: 0
Mesaj: #3
RE: Opencart Order Total(Toplam Sipariş) Modülü Hazırlanması
(15-03-2011 02:45)duzgun demiş ki:  Opencart Order Total(Toplam Sipariş) Modülü Hazırlanması

Order total modülü hazırlanması için opencartda MVC yapısına uygun biçimde en başta gerekli olan dosyaları oluşturmak gerekmektedir. Bu konuyla ilgili olarak extra indirim adlı çok basit bir modül yazalım. En baştan aşağıdaki şekilde bir order total dizin ve dosya sistemi oluşturmalıyız.

1. admin/controller/total/extra.php
2. admin/language/turkish/total/extra.php
3. admin/view/template/total/extra.tpl
4. catalog/model/total/extra.php
5. catalog/language/turkish/total/extra.php

Opencart eklenti yönetimleri admin panelde Eklentiler menüsünde yer almaktadır ve İçerik Modülleri,Kargo Modülleri,Ödeme Modülleri,Sipariş Toplamı olarak adlandırılırlar.

Eklenti yönetimi(admin) denetleyicileri ise /admin/controller/extension/ dizininde bulunmaktadır.
Order total(toplam sipariş) bu dizinde total.php controller(denetleyici) tarafından üretilmektedir.

Order Total denetleyicileri /admin/controller/total/ dizininde bulunmaktadır.

1. admin/controller/total/extra.php -> db'de setting tablosuna girilecek anahtar değer için grup adı "extra" ve yüklenecek key(anahtar),value(değer) ayarlarını ekleme,güncelleme ve düzenleme için oluşturulmuş kodlardır. Yaptığı görev basittir.
$this->load->model('setting/setting'); modeli çağrılarak post edilen bilgiler
$this->model_setting_setting->editSetting('extra', $this->request->post); ile db deki setting tablosuna girilir.

2. admin/language/turkish/total/extra.php -> extra adında order total dil dosyası /admin/controller/extension/total.php eklenti controller tarafından otomatik olarak yüklenir. Bu şekilde toplam sipariş modülleri listelenirken adlarıda dil dosyasında okunup yazılır. Ayrıca admin/controller/total/extra.php controller içinde tekrar dil dosyası manual olarak $this->load->language('total/extra'); şeklinde yüklenerek her modülde modül adını ve özelliklerini belirten tanımlamaları yaparsınız.

3. admin/view/template/total/extra.tpl -> Eklenti mensünden toplam sipariş bölümüne tıkladınız ve listelenen toplam sipariş modüllerini düzenle dediğinizde modülün controller(admin/controller/total/extra.php) ine bağlı olarak template yüklenir. extra.tpl dosyasının içinde yazılan html ve php kodları düzenleme bölümünde listelenen modül özelliklerini post edecek biçimde hazırlanır.

1,2,3 ün görevi sadece db deki setting tablosuna order total modülleriyle ilgili configurasyon anahtar değerlerini girmek,güncellemek,silmektir. Aynı olanyın benzeri diğer e-ticaret sistemlerinde de aynıdır.

Opencartta ayrıca modüllere erişim izni verilmeside gerekmektedir. Bu erişim izni işlemi Sistem menüsünden Kullanıcılar->Kullanıcı Grupları bölümünde listelenen kullanıcıların düzenle bölümüne tıklayarak izin erişimi olan dosyaların işaretlenmesi ile yapılmaktadır. Bu işaretleme sonrası kaydet e tıklanmalıdır.

Opencart modül izni erişimleri db deki user_group tablosunda düzenle dediğiniz kullanıcı grubuna ait erişim izni verilen dosyaların dizi şeklinde oluşturulup serialize yöntemi ile tabloya kaydedilmesi ile depolanmaktadır. Daha sonra unserialize ile izinli modüllerin permission(yetki,izin) kontrolleri yapılabilmektedir. unserialize edilen bilgi dizi değişkene dönüştüğünden dizi içinde dosyanın bulunması erişim izini olduğunu gösterecektir.

Bu bölüme kadar anltılanların hepsi yönetim arayüzü ile ilgilidir.

Opencart config sınıfı ile setting tablosundaki tanımlara ulaşım imkanı vermektedir.

4. catalog/model/total/extra.php
Order total modülleri sort order numaralarına göre yüklenmektedirler.

5. catalog/language/turkish/total/extra.php
extra sipariş toplamı modülünün dil dosyasına aşağıdaki tanımlar yapılır.

PHP Kod:
<?php
$_
['text_extra'] = 'Extra İndirim:';
?>

extra.php içeriğine basit biçimde aşağıdaki kodları ekleyerek çalışma biçimini görebiliriz.

PHP Kod:
<?php
class ModelTotalExtra extends Model {
public function 
getTotal(&$total_data, &$total, &$taxes) {
$this->load->language('total/extra');
if(
$this->currency->format($this->cart->getSubTotal(), 'TRY'FALSEFALSE)>49)
{
$total_data[] = array('title'      => $this->language->get('text_extra'),
'text'       => $this->currency->format($this->cart->getSubTotal()*0.05),
'value'      => $this->cart->getSubTotal()*0.05,
'sort_order' => // yüklenme değil listelenme sırasıdır.
);
$total -= $this->cart->getSubTotal()*0.05;
}
}
}
?>

Örneğimizde TRY cinsinden net fiyatı 49 TL nin üzerindeki ürünlere %5 indirim uygulanmıştır.
Bu modül kullanıma hazır bir modül olmamakla birlikte opencartta order total mantığının nasıl işlediğini anlatabilmek için örneklendirilmiştir.

©duzgun.com Harici yayınlanması yasaktır.

güzel anlatım. emeğine sağlık
20-02-2013 12:38
Bu kullanıcının gönderdiği tüm mesajları bul Bu mesajı alıntı yap
sitedizaynnet Çevrimdışı
Junior Member
**

Mesajlar: 3
Katılım: Sep 2013
Rep Puanı: 0
Mesaj: #4
RE: Opencart Order Total(Toplam Sipariş) Modülü Hazırlanması
Teşekkürler
07-09-2013 12:38
Bu kullanıcının gönderdiği tüm mesajları bul Bu mesajı alıntı yap
shopencart Çevrimdışı
Member
***

Mesajlar: 47
Katılım: Feb 2013
Rep Puanı: 0
Mesaj: #5
RE: Opencart Order Total(Toplam Sipariş) Modülü Hazırlanması
Teşekkürler üstad.

muratd3434@gmail.com
09-09-2013 19:01
Bu kullanıcının gönderdiği tüm mesajları bul Bu mesajı alıntı yap
Venusay Çevrimdışı
Member
***

Mesajlar: 10
Katılım: Jun 2012
Rep Puanı: 0
Mesaj: #6
RE: Opencart Order Total(Toplam Sipariş) Modülü Hazırlanması
teşekkürler.
10-09-2013 15:23
Bu kullanıcının gönderdiği tüm mesajları bul Bu mesajı alıntı yap
Yeni Cevap 


Benzer Konular...
Konu: Yazar Cevaplar: Gösterim: Son Mesaj
  Opencart Ücretli Destek ve Özel Tema Tasarımı oscommerce2626 1 2,628 02-06-2017 18:03
Son Mesaj: wax123
  Opencart 2.0 Gün yüzüne Çıktı gulendam 5 5,064 28-12-2014 22:22
Son Mesaj: gulendam
  OpenCart Action Temel Sınıfı(Base Class) duzgun 4 5,249 27-08-2014 17:52
Son Mesaj: Düzgün Reyiz Üşüyoruz
  OpenCart Registry duzgun 2 4,467 04-08-2014 17:18
Son Mesaj: uveybaba
  Opencart 1.5 Attribute & Options Table DB Diagram duzgun 6 6,948 04-08-2014 17:17
Son Mesaj: uveybaba
  Opencart Ön Kontrol(Front Controller) duzgun 1 3,739 02-06-2014 14:13
Son Mesaj: rezaradmehr

Foruma Git:


Bu konuyu görüntüleyen kullanıcı(lar): 1 Ziyaretçi