簡體   English   中英

Woocommerce添加到購物車ajax和迷你購物車

[英]Woocommerce add to cart ajax and mini-cart

當產品通過ajax添加到購物車時,我需要重新填充迷你購物車。 我設法使用過濾器woocommerce_add_to_cart_fragments更新購物車數量,如下所示:

add_filter( 'woocommerce_add_to_cart_fragments', function($fragments) {

    ob_start();
    ?>

    <div class="cart-contents">
        <?php echo WC()->cart->get_cart_contents_count(); ?>
    </div>

    <?php $fragments['div.cart-contents'] = ob_get_clean();

    return $fragments;

} );

我的HTML標記是

<div class="cart-contents">
    <?php echo WC()->cart->get_cart_contents_count(); ?>
</div>

隱藏div女巫的貝婁.cart-contents懸停

<div class="header-quickcart"><?php woocommerce_mini_cart(); ?></div>

我想以與woocommerce_add_to_cart_fragments相同或類似的方式更新此div內容。 或者我應該更改HTML標記並將所有內容保存在1 div中? 這樣做的常用方法或最佳做法是什么?

好的,我剛才意識到我可以使用woocommerce_add_to_cart_fragments過濾2次,如下所示:

add_filter( 'woocommerce_add_to_cart_fragments', function($fragments) {

    ob_start();
    ?>

    <div class="cart-contents">
        <?php echo WC()->cart->get_cart_contents_count(); ?>
    </div>

    <?php $fragments['div.cart-contents'] = ob_get_clean();

    return $fragments;

} );

add_filter( 'woocommerce_add_to_cart_fragments', function($fragments) {

    ob_start();
    ?>

    <div class="header-quickcart">
        <?php woocommerce_mini_cart(); ?>
    </div>

    <?php $fragments['div.header-quickcart'] = ob_get_clean();

    return $fragments;

} );

首先更新數量和另一個刷新迷你車視圖。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM