source

카트 에이잭스와 미니카트에 우커머스 추가

manycodes 2023. 9. 23. 22:50
반응형

카트 에이잭스와 미니카트에 우커머스 추가

아약스를 통해 추가된 제품이 카트에 추가되면 미니카트를 다시 채워야 합니다.다음과 같은 필터 woocmerce_add_to_cart_fragment로 카트 수량을 업데이트할 수 있습니다.

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>

.cart-contents hover에 표시되는 숨겨진 분기점인 Bellow

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

이 div 컨텐츠를 wocommerce_add_to_cart_fragments와 동일 또는 유사하게 업데이트하고 싶습니다.아니면 HTML 마크업을 변경하고 모든 것을 1디브로 유지해야 합니까?그것을 하기 위한 일반적인 방법이나 최선의 방법은 무엇입니까?

이제 woocmerce_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;

} );

첫 번째 업데이트 수량과 또 다른 상쾌한 미니 카트 뷰

언급URL : https://stackoverflow.com/questions/39969280/woocommerce-add-to-cart-ajax-and-mini-cart

반응형