Стоимость доставки в JoomShopping в зависимости от условий
Хак топорный, но рабочий. Плагины я писать не умею, извините.
Задача
Есть два метода оплаты: 1 (предоплата) и 2 (наложенный платеж). Стоимость доставки должна определяться следующим образом:
-
Если выбран метод оплаты 1(предоплата) и сумма покупки больше 2500 р. - доставка бесплатная
-
Во всех остальных случаях сумма за доставку рассчитывается обычным методом
Решение
Редактируем файл /components/com_jshopping/templates/имя_шаблона/checkout/shippings.php
После кода
<?php defined( '_JEXEC' ) or die(); ?>
добавляем
<?php $cart_data = JSFactory::getModel('cart', 'jshop'); ?> <?php $cart_data->load(); ?> <?php $payment_data_id = $cart_data->getPaymentId(); ?>
а строчку
<?php echo $shipping->name?> (<?php echo formatprice($shipping->calculeprice); ?>)</label>
заменяем на
<?php echo $shipping->name?> <?php echo $this->payment_method ?> <?php if ($cart_data->price_product>2500 && $payment_data_id==7){ ?> <b><?php echo "(БЕСПЛАТНАЯ ДОСТАВКА по предоплате)"; ?></b> <?php }else{ ?> (<?php echo formatprice($shipping->calculeprice); ?>) <?php } ?> </label>
Пояснения
$payment_data_id==7 - где 7 это ID метода оплаты «Предоплата», посмотреть его можно на страничке administrator/index.php?option=com_jshopping&controller=payments