在woocommerce中为变量产品设置输入字段min和max

时间:2017-04-27 08:38:33

标签: input woocommerce max min

由于我们的产品总是有最小数量,我使用文件quantity-input.php来设置它。这适用于单个产品,但是当选择变量产品时,输入字段会将最小值重置为1并清空最大值。如何在变量产品上设置最小值和最大值?

在quantity-input.php

// Volume varaibles
$v1 = get_field('v1') ?: '1';
<div class="quantity buttons_added">

    <?php echo $qty_start; ?><input id="inputNumber" type="number" step="<?php echo esc_attr( $step ); ?>" min="<?php echo $v1; ?>" max="9999" name="<?php echo esc_attr( $input_name ); ?>" value="<?php echo esc_attr( $input_value ); ?>" title="<?php echo esc_attr_x( 'Qty', 'Product quantity input tooltip', 'woocommerce' ) ?>" class="input-text qty text" size="4" pattern="<?php echo isset( $pattern ) ? esc_attr( $pattern ) : ''; ?>" inputmode="<?php echo isset( $inputmode ) ? esc_attr( $inputmode ) : ''; ?>" /><?php echo $qty_end; ?>
</div>

该文件位于woocommerce的全局文件夹中。

1 个答案:

答案 0 :(得分:0)

你应该没有编辑那个文件......

这些钩子可以实现它。只需将其粘贴到主题的functions.php

中即可
add_filter( 'woocommerce_quantity_input_max', 'woocommerce_quantity_input_max' );
function woocommerce_quantity_input_max( $max ){
    $max = 10;
    return $max;
}

add_filter( 'woocommerce_quantity_input_min', 'woocommerce_quantity_input_min', 10, 2 );
function woocommerce_quantity_input_min( $min, $product ){
    if ( $product->get_id() == 89 ) {
          $min = 2;
    } else {
          $min = 3;
    }
    return $min;
}

你甚至可以对它做一些条件陈述。