我的部分产品具有自定义属性 pa_ves-g
。在购物车总数中,我需要在购物车中获得所有产品的全部量。
我找到了这个重量代码:
function myprefix_cart_extra_info() {
global $woocommerce;
echo '<div class="cart-extra-info">';
echo '<p class="total-weight">' . __('Total weight', 'woocommerce');
echo ' ' . $woocommerce->cart->cart_contents_weight . ' ' . 'kg';
echo '</p>';
echo '</div>';
}
那么如何为pa_ves-g
做同样的事情?
感谢。
答案 0 :(得分:3)
首先,您使用旧的(工作)购物车语法:如果您使用 global woocommerce;
,则不再需要 $woocommerce->cart
< strong> WC()->cart
实际语法。
使用该代码获取音量属性的总购物车数量值:
function myprefix_cart_extra_info() {
$volume = 0;
// Iterating though each item in cart
$cart_items = WC()->cart->get_cart();
foreach( $cart_items as $cart_item ){
$item_id = $cart_item['product_id'];
$terms = get_the_terms( $item_id , 'pa_ves-g');
foreach($terms as $key => $term)
if(!empty($term->name)) $volume += $term->name;
}
echo '<div class="cart-extra-info">';
echo '<p class="total-weight">' . __('Total volume', 'woocommerce');
echo ' ' . $volume . ' ' . 'm3';
echo '</p>';
echo '</div>';
}
这可以在您的活动子主题(或主题)的function.php文件中,也可以在任何插件文件中。
此代码经过测试且有效。