我有个问题,我现在真的快死了。我把WooCommerce升级到了主要的3版,直接升级到了3.0.2。
完成后,更新数据库。到目前为止还不错。
我现在的问题是,我编写的函数似乎不再有效。它是这样的:
add_action( \'woocommerce_before_calculate_totals\',\'calc_ferienspiele_discount\' );
function calc_ferienspiele_discount( $cart_object ) {
global $woocommerce;
$items = $woocommerce->cart->get_cart();
$x=0;
$custom_price = 140; // This will be your custome price
foreach ( $cart_object->cart_contents as $key => $value ) {
$target_product_id=$value[\'data\']->get_sku();
for ($_i = 1; $_i <= $value[\'quantity\']; $_i++) {
$x++;
if ( $value[\'data\']->get_sku() == $target_product_id ) {
if ($x>1) {
$value[\'data\']->set_price = $custom_price;
echo $value[\'data\']->get_sku();
echo \'This works and get displayed\';
}
}
}
}
}
我现在它可能有点马虎,但它所做的是,它检查,如果有几个项目具有相同的SKU。如果是这样的话,那就算了。当特定SKU中有1个以上的项目时,以下成本会降低。因此,如果商品在购物车中放了三次,第一次是100美元,另两次是80美元。
我可以跳到最后if
设定新价格的地方(使用echo
), 但新的价格不会确定。我想有些东西从主要版本2改成了3,我想不出这里出了什么问题。花了几个小时才找到它。。。
你们知道怎么回事吗?
谢谢