如何获取购物车中自定义属性值的总和?
How to get sum of custom attribute values in cart?
我的一些产品具有自定义属性 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
做同样的事情?
谢谢。
首先,您使用的是旧的(有效的)购物车语法:您不再需要 global woocommerce;
如果改为使用 $woocommerce->cart
你使用 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 文件或任何插件文件。
此代码已经过测试并且有效。
我的一些产品具有自定义属性 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
做同样的事情?
谢谢。
首先,您使用的是旧的(有效的)购物车语法:您不再需要 global woocommerce;
如果改为使用 $woocommerce->cart
你使用 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 文件或任何插件文件。
此代码已经过测试并且有效。