【发布时间】:2020-05-09 11:48:09
【问题描述】:
这是我正在编写的一个小函数,用于根据购物车中价格超过 40 欧元的产品数量添加额外的运费。
<br>
<div>
<?php
$additionalShippingCosts = 0;
foreach ( WC()->cart->get_cart() as $cart_item_key => $cart_item ) {
$product = $cart_item['data'];
$product_id = $cart_item['product_id'];
$quantity = $cart_item['quantity'];
$price = WC()->cart->get_product_price( $product );
$pricenum = (float) $product->get_price();
if($pricenum < 40) {
$price2 = 0;
} else {
$price2 = 5;
$additionalShippingCosts += $price2*$quantity;
}
?>
<div>product price: <?php echo $pricenum; ?></div>
<div>extra cost: <?php echo $price2; ?> * <?php echo $quantity; ?></div>
<br>
<?php
}
?>
<div>Additional shipping cost: <?php echo $additionalShippingCosts; ?></div>
</div>
我已经到了函数计算应该添加多少运费的地步,现在我需要 1) 实际将其添加到运费中 2) 每次更新购物车时运行它 3) 为运输国家/地区引入条件
条件句会很简单,我将对它们进行硬编码。基本上“如果运送到德国,每件超过 40 欧元的额外运费为 10 欧元”和“如果运送到爱尔兰,每件超过 40 欧元的额外运费为 15 欧元”
【问题讨论】:
标签: php wordpress woocommerce shipping