【发布时间】:2021-08-26 23:43:40
【问题描述】:
我正在尝试显示添加到购物车的产品变体数量并在循环中动态显示。
我试过这个 PHP 代码:
<?php
$targeted_id = $product->get_id();
// Loop through cart items
foreach ( WC()->cart->get_cart() as $cart_item ) {
if( in_array( $targeted_id, array( $cart_item['product_id'],$cart_item['variation_id']) )){
$quantity = $cart_item['quantity'];
break; // stop the loop if product is found
}
}
// Displaying the quantity if targeted product is in cart
if( isset( $quantity ) && $quantity > 0 ) {
echo '<a href="http://adel-hat.ru/cart/"><div class="qty_on_product"><i class="tb-icon tb-icon-shopping-cart on_product"></i>';
printf( '<span class="product-cart-items">' . __("%d") . '</span>', $quantity );
echo '</span></div></a>';
}
?>
使用此代码,我将显示添加到购物车的所有变体(因为这里我使用父 ID)并且它仅适用于页面加载。
当变体选择器在没有页面加载的情况下发生变化时,我想动态进入
$tageted_id变量variation_id。我该怎么做?
从我的问题的另一方面,我试图通过 jQuery 获取variation_id
<script>
jQuery(document).ready(function() {
jQuery( '.variations_form' ).each( function() {
jQuery(this).on( 'found_variation', function( event, variation ) {
console.log(variation);//all details here
var variation_id= variation.variation_id;//selectedvariation
console.log(variation_id);
});
});
});
</script>
当我使用这个时,我会在控制台中获得选定的变体 ID。可能有什么方法可以在不重新加载页面的情况下将variation_id 变量动态发送到 PHP $tageted_id 变量?
【问题讨论】:
标签: php wordpress woocommerce