所以我遇到了这个编辑问题:我的产品有额外的可选费用,但购物车将其作为打包交易处理,因此当显示总计时,无法将附加组件进行编辑。 仅包括附件的整个产品都是可移动的。 woocommerce_cart_item_remove_link 似乎触发了一些JavaScript, 如何使用它仅删除产品阵列的一部分? 这是来自cart.php的原始代码:
<td class="product-remove">
<?php
echo apply_filters( 'woocommerce_cart_item_remove_link', sprintf(
'<a href="%s" class="remove"
aria-label="%s" data-product_id="%s" data-product_sku="%s">×</a>',
esc_url( wc_get_cart_remove_url( $cart_item_key ) ),
__( 'Remove this item', 'woocommerce' ),
esc_attr( $product_id ),
esc_attr( $_product->get_sku() )
), $cart_item_key );
?>
</td>
这是我尝试过的
$i=0;
$a=0;
foreach($product_addons as $addons=>$addon) {
if(isset($product_addons)){
if(isset($i)){
echo "<p>";
print_r($addon['name']);
echo "</p> ";
unset($i) ;
}
echo '<div id="addon-'.$a.'">';
echo apply_filters( 'woocommerce_cart_item_remove_link', sprintf(
'<a href="%s" class="remove" aria-label="%s" data-product_id="%s"
data-product_sku="%s">×</a>',
esc_url( wc_get_cart_remove_url($a) ),
__( 'Remove this item', 'woocommerce' ),
esc_attr($addons['addons']),
esc_attr( $_product->get_sku() )
), $addon);
print_r($addon['value']);
echo ":";
print_r($addon['price']);
echo "</div>";
$a++ ;
}
}
我得到了链接,但是它们没有触发任何JavaScript。我该怎么办?
或者,如果有任何内部功能来编辑购物车项目数据。 此函数“ wc_get_formatted_cart_item_data”仅将整个插件列为字符串,这并不是很有用。我需要访问每个字符串,然后将其删除或添加到整个产品中。