猿问

添加标题并在 WooCommerce 结账审核订单表上显示商品成本和总商品成本

我知道我的问题的标题可能听起来令人困惑,因此,我请您查看所附图片以进行澄清。

我自己尝试过这项工作,但没有成功。测试我的代码不会改变结账页面上的任何内容。没有变化,没有错误,没有通知——什么都没有。


到目前为止我的代码:


add_filter( 'woocommerce_cart_item_price', 'item_price_and_total_price', 10, 3 );

function item_price_and_total_price( $price, $cart_item, $cart_item_key ) {


    foreach( WC()->cart->get_cart() as $cart_item ){    

        $item = $cart_item['data']->get_id();

    }


    // item price title

    $price_title = 'Item price';


    // item price (this should not change as the qty changes)

    $price_per_item = wc_price( $item ) . ' per item';


    // total item price (cost) as the qty changes

    $total_item_price = // don't know how to get it


    // return everything

    $price = $price_title . '<br />' . $price_per_item . '<br />' . $total_item_price;


    return $price;

}

谁能告诉我哪里出了问题?


陪伴而非守候
浏览 107回答 1
1回答

四季花海

你可以用woocommerce_cart_item_subtotal钩子代替。foreach不需要使用循环请注意 WooCommerce条件标签的使用:is_checkout()- 在结账页面返回 true可选:$cart_item['quantity'];必要时可根据产品数量提供附加条件function filter_woocommerce_cart_item_subtotal( $subtotal, $cart_item, $cart_item_key ) {    // Returns true on the checkout page    if ( is_checkout() ) {           // Item price title        $price_title = 'Item price';                // Item price        $item_price = $cart_item['data']->get_price();                // Line subtotal        $line_subtotal = $cart_item['line_subtotal'];                // Item title + item price        $subtotal = '<span>' . $price_title . '</span>' . wc_price( $item_price );                // Append to        $subtotal .= wc_price( $line_subtotal );    }    return $subtotal;}add_filter( 'woocommerce_cart_item_subtotal', 'filter_woocommerce_cart_item_subtotal', 10, 3 );
随时随地看视频慕课网APP
我要回答