首页 > 解决方案 > 如何在 woo commerce 存档页面上添加数量字段,当我添加或减去产品时,它会自动更新购物车

问题描述

我正在尝试在 woo commerce 存档页面上添加数量字段我使用此过滤器添加它们

add_filter('woocommerce_loop_add_to_cart_link', 'quantity_inputs_for_loop_ajax_add_to_cart', 10, 2);
功能数量_输入_for_loop_ajax_add_to_cart($html,$product){
    if ( $product && $product->is_type( 'simple' ) && $product->is_purchasable() && $product->is_in_stock() && ! $product->is_sold_individually() ) {
        // 获取必要的类
        $class = implode('', array_filter(array(
            '按钮',
            '产品类别_' 。$product->get_type(),
            $product->is_purchasable() && $product->is_in_stock() ? 'add_to_cart_button':'',
            $product->supports('ajax_add_to_cart') ?'ajax_add_to_cart':'',
        ) ) );

        // 添加嵌入标签和数量字段
        $html = sprintf('%s%s%s%s',
            '',
            woocommerce_quantity_input(array(), $product, false),
            esc_url($product->add_to_cart_url()),
            esc_attr( isset( $quantity ) ? $quantity : 1 ),
            esc_attr($product->get_id()),
            esc_attr($product->get_sku()),
            esc_attr( isset( $class ) ? $class : 'button' ),
            esc_html( $product->add_to_cart_text() ),
            ''
        );
    }
    返回 $html;
}
add_action( 'wp_footer' , 'archives_quantity_fields_script' );
function archives_quantity_fields_script(){
    if( is_shop() || is_product_category() || is_product_tag() ): ?>
    <script type='text/javascript'>
        jQuery(function($){
            // Update quantity on 'a.button' in 'data-quantity' attribute (for ajax)
            $('form.cart').on('change', 'input.qty', function() {
                if ($(this).val() === '0') 
                    $(this).val('1');
                $(this).closest('form.cart').find( 'a.add_to_cart_button').attr('data-quantity', $(this).val());
            });
        });
    </script>
    <?php endif;
}

但我真正需要做的是,当有人单击 + 按钮时,我希望它会自动将产品添加到购物车,如果单击 - 按钮产品从购物车中删除,请帮助我这样做,如果有人知道如何做到这一点提前谢谢

标签: wordpresswoocommercearchive

解决方案


推荐阅读