22 Mart 2016 Salı

Open Cart 1.5.X Belirlenen ücretsiz kargo tutarındaki alımlarda diğer kargo metodlarını göstermeme

Merhaba arkadaşlar ve işin erbabı olan üstadlarımız.

Başlık anlamsız ve karmaşık olmuş ise kusuruma bakmayın, eğer öyle ise biraz anlam kazandırmak için aşağıda kendimce anlatacağım.

Şimdi diyelim ki sitenizdeki 2 tane kargo metedu var. Bunlar ücretsiz kargo ve sabit kargo metadu , ücretsiz kargo için belirlediğiniz tutar 75tl, sabit kargo ücretiniz 5tl olsun.
Sitenizde bir ürünün fiyatı 74tl olsun. müşteri bu ürünü aldığında kasadaki kargo metodunda belirlediğiniz sabit kargo fiyatı görünecek. buraya kadar herşey standart olan şeyler zaten, Diyelim ki müşteriniz sizin belirlediğiniz ücretsiz kargo metodundaki değerde yada üstünde bir alım yaptı kargo metodu kısmında ise hem ücretsiz kargo hemde sabit kargo tutarları görünüyordu,

bu eklenti ile alınan ürün fiyatı sizin belirlediğiniz ücretsiz kargo miktarın altında ise sabit kargo fiyatı görünecek. Ürün fiyatı ücretsiz kargo için belirlediğiniz miktara eşit yada üstünde ise kasada sadece ücretsiz kargo metodu görünecek.

Eğer catalog/model/shipping/flat.php de bir değişiklik yapmadıysanız direk aşağıdaki flat.php ilgili yere ftp'den atınız.

Eğer flat.php de değişiklik yaptıysanız.
catalog/model/shipping/flat.php de aşağıdakini bununuz.

Kod:
$query = $this->db->query("SELECT * FROM " . DB_PREFIX . "zone_to_geo_zone WHERE geo_zone_id = '" . (int)$this->config->get('flat_geo_zone_id') . "' AND country_id = '" . (int)$address['country_id'] . "' AND (zone_id = '" . (int)$address['zone_id'] . "' OR zone_id = '0')");

sonrasına aşağıdakini ekleyiniz

Kod:
$query = $this->db->query("SELECT * FROM " . DB_PREFIX . "zone_to_geo_zone WHERE geo_zone_id = '" . (int)$this->config->get('free_geo_zone_id') . "' AND country_id = '" . (int)$address['country_id'] . "' AND (zone_id = '" . (int)$address['zone_id'] . "' OR zone_id = '0')");

aşağıdakini bunun

Kod:
if (!$this->config->get('flat_geo_zone_id')) {

ve son olarak aşağıdaki kodla değiştirin.

Kod:
if ($this->cart->gettotal() >= $this->config->get('free_total') ) {
            $status = false;
        } elseif (!$this->config->get('flat_geo_zone_id')) {

Hiç yorum yok:

Yorum Gönder