woocommerce widget Cart中的产品数量

时间:2016-10-19 22:58:36

标签: ajax wordpress woocommerce

我希望在单个产品页面上的产品目录存档中有数量字段。它工作正常,但没有产品档案列表。

以下是情景:

- 默认数量为1
- 我把它改成2
- 将此产品添加到购物车中 - 购物车中的数量为2
- 将数量改为任何数量,即:5 - 再次将相同的产品添加到购物车中 - 购物车中的数量增加了.. 2!不添加5
(即使[data-quantity]属性正确更改)
- 所以现在Quanity是4而不是7增加5

我尝试了全新安装wordpress并使用了二十六个主题并停用了所有插件。以下是我使用的代码,是否有任何其他过滤器可以在产品列表存档中执行此操作?

function custom_quantity_field_archive() {

    $product = wc_get_product( get_the_ID() );

    if ( ! $product->is_sold_individually() && 'variable' != $product->product_type && $product->is_purchasable() ) {
        woocommerce_quantity_input( array( 'min_value' => 1, 'max_value' => $product->backorders_allowed() ? '' : $product->get_stock_quantity() ) );
    }

}
add_action( 'woocommerce_after_shop_loop_item', 'custom_quantity_field_archive', 31);


/**
 * Add requires JavaScript. uzzyraja.com/sourcecodes/
 */
function custom_add_to_cart_quantity_handler() {

    wc_enqueue_js( '
        jQuery( ".post-type-archive-product" ).on( "change input", ".quantity .qty", function() {
            var add_to_cart_button = jQuery( this ).parents( ".product" ).find( ".add_to_cart_button" );

            // For AJAX add-to-cart actions
            add_to_cart_button.attr( "data-quantity", jQuery( this ).val() );

            // For non-AJAX add-to-cart actions
            add_to_cart_button.attr( "href", "?add-to-cart=" + add_to_cart_button.attr( "data-product_id" ) + "&quantity=" + jQuery( this ).val() );
        });
    ' );

}
add_action( 'init', 'custom_add_to_cart_quantity_handler' );

0 个答案:

没有答案