Woocommerce - 找出购物车中的商品超过 50 公斤

Woocommerce - Find out an item in a shopping cart is over 50 kilos

我正在使用 Woocommerce,我的购物车中有很多商品。

我如何知道购物车中的某件商品是否超过了一定的公斤数?

例如

If shopping cart has an item that weighs over 50 kgs, then do XYZ.

目前,我可以使用以下代码获取所有购物车商品的总重量:

$cartweight = $woocommerce->cart->cart_contents_weight;

如何查看购物车中的商品是否超过 50 公斤?

想通了。这是我的代码:

add_filter( 'woocommerce_get_item_data', 'display_custom_item_data', 10, 2 );
function display_custom_item_data( $cart_item_data, $cart_item ) {
    
    session_start();
    
    if ( $cart_item['data']->get_weight() > 0 ){
        $cart_item_data[] = array(
            'name' => __( 'Weight', 'woocommerce' ),
            'value' =>  ( $cart_item['data']->get_weight() )  . ' ' . get_option('woocommerce_weight_unit')
        );
    }
    
    $cart_item_weight = $cart_item['data']->get_weight();
    
    if ($cart_item_weight >= "30" && $cart_item_weight <= "59")
    {
        $_SESSION["weightflag"] = "delivery_options1";
    }
    elseif ($cart_item_weight >= "60")
    {
        $_SESSION["weightflag"] = "delivery_options2";
    }
    
    return $cart_item_data;
}