在WooCommerce ajax购物车页面中,我尝试使用以下方式分离默认的javascript事件以删除添加的项目(带有十字的小红色图标):
$(".remove").off("click");
或
$(".remove").unbind("click");
但它没有用。
我尝试这样做的主要原因是,在标题中,我有一个带有产品编号通知的自定义菜单购物车图标。我无法通过WooCommerce ajax更新此通知编号,但只能刷新页面。
如何禁用此javascript事件? 或者如何使我的通知脚本与ajax一起使用?
这是我的menucart代码:
<div id="expanded-menucart">
<?php
foreach ( WC()->cart->get_cart() as $cart_item_key => $cart_item ) {
?>
<div class="one-menucart-item">
<?php
$_product = apply_filters( 'woocommerce_cart_item_product', $cart_item['data'], $cart_item, $cart_item_key );
$thumbnail = apply_filters( 'woocommerce_cart_item_thumbnail', $_product->get_image(), $cart_item, $cart_item_key );
$product_subtotal = apply_filters( 'woocommerce_cart_item_subtotal', WC()->cart->get_product_subtotal( $_product, $cart_item['quantity']), $cart_item, $cart_item_key );
$quantity = $_product->get_stock_quantity();
$antal = $cart_item['variation']['attribute_antal'];
$productid = $cart_item['product_id'];
echo apply_filters( 'woocommerce_cart_item_remove_link', sprintf(
'<a href="%s" class="remove, cart-remove" title="%s" data-product_id="%s" data-product_sku="%s">×</a>',
esc_url( WC()->cart->get_remove_url( $cart_item_key ) ),
__( 'Remove this item', 'woocommerce' ),
esc_attr( $product_id ),
esc_attr( $_product->get_sku() )
), $cart_item_key );
echo $thumbnail; ?>
<a id="<?php $productid; ?>" href="<?php the_permalink($productid); ?>"> <?php echo $cart_item['data']->post->post_title;?></a><br><br><?php
echo $antal;
echo $product_subtotal;?><br>
</div><?php
}
?>
<?php global $woocommerce; ?>
<p>TOTAL:
<a class="cart-contents" href="<?php echo $woocommerce->cart->get_cart_url(); ?>"><?php echo $woocommerce->cart->get_cart_total(); ?></a></p><br>
<?php if ( WC()->cart->get_cart_contents_count() != 0 ) { ?>
<div class="row">
<div class="col-lg-12 col-md-12 col-sm-12 col-xs-12">
<div class="menucart-checkout">
<a href="<?php get_home_url(); ?>/fcb/checkout">TILL CHECKOUTEN</a>
</div>
</div>
</div>
<?php } ?>
</div>
pastebin上的外部来源:http://pastebin.com/7rXuBQPj
感谢。
答案 0 :(得分:1)
所以,只有当您在购物车页 时才会遇到问题,因为在这种情况下您有2个购物车:
所以他们处于冲突中,这是正常的。你必须在他们之间做出选择。
问题:您是否真的需要这款小型购物车,因为它位于购物车页面上?
2个解决方案:
例如,在购物车页面上设置简易迷你购物车版(避免冲突和实时刷新项目(ajax删除))仅限于项目计数。或者您可以完全禁用以获取购物车页面。为此,您可以使用条件 is_cart()
。
绕过购物车页面(更加困难),将缺失的功能扩展到您的实际迷你车:
在案例2中,您必须将客户重定向到结帐,在某些WooCommerce商店中有什么经典行为。