Перейти к содержимому


Фотография
* * * * * 1 Голосов

Бесплатная доставка при заказе от $property

рецепт jbzoo 220v - high voltage 220v shipping free shipping

Сообщений в теме: 23

#21 Max

Max

Отправлено 17 November 2015 - 09:43

Файл manual.xml
 

Допишите папку: media/zoo/applications/jbuniversal/cart-elements/shipping/manual/manual.php

Спасибо!


  • 0

Joomla: 3.4.8 JBZoo: 2.2.5 Pro rev3095 Zoo: 3.3.7 WidgetKit: 2.4.3


#22 axeld

axeld

Отправлено 22 January 2016 - 19:04

Супер нужная вещь !!!


  • 0

#23 udjin

udjin

Отправлено 11 March 2016 - 05:53

Выкладываю рецепт. На скорую руку сбахал по аналогии по быстрому.

 

Задача стояла так. Необходимо сделать расчет доставки курьером по городу до 1000 рублей 500 рублей доставка. Свыше 1000 бесплатно.

 

Делал только для произвольной доставки (manual), но думаю по аналогии и с остальными.

 

Файл manual.xml

Добавляем между <params> и </params>:

<param name="rate2" type="text" default="0" label="Стоимость после границы" description="JBZOO_ELEMENT_SHIPPING_MANUAL_DESC"/>
<param name="stop" type="text" default="0" label="Граница доставки" description="JBZOO_ELEMENT_SHIPPING_MANUAL_DESC"/>

Тут мы добавили две опции. rate2 - стоимость доставки после суммы корзины и stop - граница доставки

 

Файл manual.php

Между class JBCartElementShippingManual extends JBCartElementShipping { и }

public function hasValue($params = array())
    {
        return true;
    }

public function getRate()
    {
	$orderSum = $this->_order->getTotalForItems(); // получили сумму за все товары (без доставки и прочего)
	$stop = $this->config->get('stop', '1000rub'); // здесь 1000 - это значение по умолчанию
		
		
        if ($orderSum->compare($stop, '<=')) { // сравниваем c границе
            return $this->_order->val($this->config->get('rate', 0)); // доставка до границы
        } else {
	   return $this->_order->val($this->config->get('rate2', 0)); // доставка от суммы свыше границы. 
	}
    }

Как результат. Если человек заказывает меньше 1000 рублей, то ему доставка 500 рублей. Если больше, то бесплатно. В корзине величина доставки считается.

 

Единственное не отказался бы от подсказки. Как сделать так, что сумма корзины допустим меньше 1000 рублей, то этот вид доставки бы вообще не выводился.

 

Работает на Joomla: 3.4.5 JBZoo: 2.2.2 Pro rev2997 Zoo: 3.3.9

 

 

Всё сделал, рецепт помог, работает на Joomla: 3.4.8 JBZoo: 2.2.5 Pro rev3095 Zoo: 3.3.15 WidgetKit: 2.5.3


  • 0

#24 Den1762

Den1762

Отправлено 24 July 2016 - 20:04

Функцию включим в основную сборку позже, её нужно дополнительно обкатать.

Эта функция присутствует в 2.2.8?


  • 0





Темы с аналогичным тегами рецепт, jbzoo 220v - high voltage, 220v, shipping, free shipping

Click to return to top of page in style!