![](https://opencartforum.com/storage/themes/set_resources_1/84c1e40ea0e759e3f1505eb1788ddf3c_pattern.png)
![](https://opencartforum.com/storage/themes/set_resources_1/84c1e40ea0e759e3f1505eb1788ddf3c_default_photo.png)
ocplanet
-
Posts
15 -
Joined
-
Last visited
On this page you can find all the add-ons and services from ocplanet
![Доставка в зависимости от расстояния](https://opencartforum.com/en/screenshots/monthly_2025_02/perkm.thumb.png.5166b701d8a1b3b8e4e5b5b833063a2f.png)
Модуль доставки в зависимости от расстояния от магазина/склада до адреса доставки указанного клиентом при оформлении заказа.
Разные тарифы при доставке по городу и за городом.
Модуль работает по средствам Google Maps Api, для работы модуля потребуется Google Map KEY_API
На данный момент модуль совместим с Opencart 3X всех сборок как с стандартным оформлением заказа так и с модулем Simple. Для других модулей оформления заказа возможна адаптация. Обязательные поля в оформлении заказа город и адрес.
..
Доставка в зависимости от расстояния
от ocplanet![Калькулятор суммы до бесплатной доставки](https://opencartforum.com/en/screenshots/monthly_2025_02/tofree.thumb.png.8972125ba5366e70c67a0c5c588f2dc1.png)
Модуль выводит сумму необходимую добавить в корзину для получения бесплатной доставки. В случае наполнения корзины на сумму, указанную для бесплатной доставки - отображает что пользователю доступна бесплатная доставка.
Пример работы вы можете посмотреть на данной странице
Для обновления данных в блоке вам необходимо добавить следующий код:
$('.freedel .progress-bar').attr('aria-valuenow', json['total_incart']);
$('.freedel .progress-bar').attr('style', 'width: ' + json['total_width'] + '%;');
if (json['total_width'] == '100') {
$('.freedel .progress-bar').addClass('progress-bar-success');
$('.freedel .progress-bar').removeClass('progress-bar-danger');
} else {
$('.freedel .progress-bar').addClass('progress-bar-danger');
$('.freedel .progress-bar').removeClass('progress-bar-success');
}
$('.fdttl').html(json['total_freedel']);
во все функции - влияющие на обновление корзины, в стандартном функционале Opencart это файл catalog/view/javascript/common.js
после каждого куска кода такого вида:
setTimeout(function () {
$('#cart > button').html(' ' + json['total'] + '');
}, 100);
Блок бесплатной доставки можно вывести как в схеме в виде модуля, таки в любом необходимом месте в шаблоне, для этого:
в controller необходимо вставить строку
$data['tofree'] = $this->load->controller('extension/module/tofree');
в view вставить в нужном месте
{{ tofree }}
ВНИМАНИЕ!
Модуль не делает бесплатной саму доставку в оформлении заказ, для этого вам необходимы настройки в модулях доставки вашего магазина...