На данный момент я добавляю стоимость доставки 65Kr.
В магазине только четыре цены.
Мне нужно изменить стоимость доставки следующим образом.
Для продукта, который стоит 198Kr и 268Kr, нужно 25Kr, а для более высокой цены (418 и 498Kr) нужно 65Kr.
Если покупатель покупает 198Kr и 418kr, ему нужно заплатить 65Kr. Это означает, что если есть один предмет, который нуждается в 65Kr, то доставка будет 65Kr.
Если покупатель покупает 198Kr и 268Kr, ему нужно заплатить 25Kr.
Я не уверен, как добавить эту доставку к общей стоимости.
Я использую следующий код для обновления общей цены.
И я добавляю 65Kr на кассе.
function updateCart($productid,$fullproduct){
$cart = isset($_SESSION['cart']) ? $_SESSION['cart'] : array();
$productid = id_clean($productid);
$totalprice = 0;
if (count($fullproduct)){
if (isset($cart[$productid])){
$prevct = $cart[$productid]['count'];
$prevname = $cart[$productid]['name'];
$prevprice = $cart[$productid]['price'];
$cart[$productid] = array(
'name' => $prevname,
'price' => $prevprice,
'count' => $prevct + 1
);
}else{
$cart[$productid] = array(
'name' => $fullproduct['name'],
'price' => $fullproduct['price'],
'count' => 1
);
}
foreach ($cart as $id => $product){
$totalprice += $product['price'] * $product['count'];
}
$_SESSION['totalprice'] = $totalprice;
$_SESSION['cart'] = $cart;
$msg = $this->lang->line('orders_added_cart');
$this->session->set_flashdata('conf_msg', $msg);
}
}
на кассе
...
$shipping= 65;
$grandtotal = (int)$totalprice + $shipping;
...
Как видите, я могу использовать сессию, чтобы отслеживать размер или цену. Поэтому я думаю, что смогу использовать их, чтобы найти окончательную цену доставки.
Я буду признателен за любые руки помощи.
Заранее спасибо.