代码之家  ›  专栏  ›  技术社区  ›  Wed

设置自定义添加到购物车默认数量,Woocommerce购物车页面除外

  •  1
  • Wed  · 技术社区  · 6 年前

    我正在使用下面的过滤器设置默认情况下添加到购物车时要预定义的2种产品的默认数量。它实际上在产品页面上工作,默认数量设置为2,并将2个产品添加到购物车。但当用户进入购物车页面时,问题出现了,如果他/她添加了4个产品,则所有计算都正确,但显示的数量是2。例如,即使我将购物车页面上的数量更改为6,并刷新购物车,所有金额都会正确重新计算,但显示的数量显示为2。 我想我应该以某种方式应用这个过滤器,只添加到购物车按钮,但不知道如何。

    我很感激你的帮助。

    add_filter( 'woocommerce_quantity_input_args', 'rb_woocommerce_quantity_changes', 10, 2 );
    function rb_woocommerce_quantity_changes( $args, $product ) {
       $args['input_value'] = 2;
       $args['max_value'] = 12;
       $args['min_value'] = 1;
       $args['step'] = 1;
       return $args; 
    }
    
    1 回复  |  直到 6 年前
        1
  •  4
  •   LoicTheAztec    6 年前

    使用尝试以下操作 is_cart() 在…上 'input_value' 参数:

    add_filter( 'woocommerce_quantity_input_args', 'custom_quantity_input_args', 10, 2 );
    function custom_quantity_input_args( $args, $product ) {
    
       if( ! is_cart() )
           $args['input_value'] = 2; // Not on cart page
    
       $args['max_value'] = 12;
       $args['min_value'] = 1;
       $args['step'] = 1;
    
       return $args; 
    }
    

    代码进入功能。活动子主题(或活动主题)的php文件。已测试并正常工作。

    相关文件: Woocommerce conditional tags