Ваше сообщение было успешно отправлено
Услуги частного программиста 1С удаленно по РФ и с выездом по Москве
Необходимо доработать блок доставки joomshopping по условию.
Если доставка по городу и сумма заказа больше 1500 руб тогда доставка 0 руб.
иначе доставка 200 руб.
Если доставка по пригороду и сумма заказа больше 2000 руб тогда доставка 0 руб.
иначе доставка 300 руб.
Редактируем файл /components/com_jshopping/templates/имя_шаблона/checkout/shippings.php (или в папке имя_шаблона/html/com_jshopping/checkout/shippings.php)
Строчку
<span class="shipping_price">(<?php print formatprice($shipping->calculeprice); ?>)</span>
заменяем на
<?php if ( $shipping->sh_pr_method_id == 6 ) {
if ( $cart_data->price_product>1500 ){
?><b><?php echo " : БЕСПЛАТНАЯ ДОСТАВКА ";?></b><?php
}else{
?><b><?php echo " : Доставка 200 Рублей";?></b><?php }
}
?>
<?php if ( $shipping->sh_pr_method_id == 7 ) {
if ( $cart_data->price_product>2000 ){
?><b><?php echo " : БЕСПЛАТНАЯ ДОСТАВКА ";?></b><?php
}else{
?><b><?php echo " : Доставка 300 Рублей";?></b><?php }
}
?>
Примечание: в «$sh_pr_method_id==6» и "7" цифра «6» это ID цены доставки, посмотреть его можно на страничке http:/*.ru/administrator/index.php?option=com_jshopping&controller=shippingsprices
Редактируем файл components/com_jshopping/controllers/checkout.php - изменяем function step4save()
Между
if (!$checkout->saveShippingData($sh_pr_method_id, $allparams, $adv_user)){ JError::raiseWarning('', $checkout->getError()); $this->setRedirect($checkoutStep->getCheckoutUrl('4')); return 0; } $sh_method = $checkout->getActiveShippingMethod(); $shipping_method_price = $checkout->getActiveShippingMethodPrice();и
$dispatcher->trigger('onAfterSaveCheckoutStep4', array(&$adv_user, &$sh_method, &$shipping_method_price, &$cart)); $next_step = $checkoutStep->getNextStep(4);
добавляем строки:
if ( $shipping->sh_pr_method_id == 6 ) {
if ( $cart->price_product>1500 ){
$cart->setShippingPrice(0);
}else{
$cart->setShippingPrice(200);
}}
if ( $shipping->sh_pr_method_id == 7 ) {
if ( $cart->price_product>2000 ){
$cart->setShippingPrice(0);
}else{
$cart->setShippingPrice(300);
}}
Готово