Рекомендую хостинг Бегет. Перенос сайтов и месяц на тестирование - бесплатно!

Как в opencart 3 отключить платную доставку при определенной сумме заказа или добавлении конкретных товаров в корзину

316

Часто в магазине на opencart возникает необходимость отключить платную доставку при определенной сумме заказа или при добавлении определенных товаров в корзину. Штатно такой функции в opencart нет, поэтому для того, чтобы это сделать, необходимо немного изменить php-код модели доставки.
Для примера рассмотрим тип доставки "Фиксированная стоимость доставки".

Отключение доставки при добавлении акционного товара в корзину

Чтобы отключить доставку при добавлении в корзину определенного товара, в файл /catalog/model/extension/shipping/flat.php нужно добавить следующий код:

foreach ($this->cart->getProducts() as $product) {
if ($product['product_id'] == 58) { // id нужного товара
$status = false;
break;
}
else {
$status = true;
}
}

Здесь $product['product_id'] == 58 - это id товара, при добавлении которого будет отключаться доставка.

Отключение доставки при определенной сумме заказа

Чтобы отключить доставку при определенной сумме заказа, в файл /catalog/model/extension/shipping/flat.php нужно добавить следующий код:

if ($this->cart->getSubTotal() > 10000) {
$status = false;
}
else {
$status = true;
}

Здесь 10000 - сумма заказа, при превышении которой будет отключаться доставка.

Добавить комментарий

Ваш адрес email не будет опубликован.

*
code