从购物车页面中删除Woocommerce购物车数量选择器

时间:2018-05-28 08:58:24

标签: php wordpress woocommerce cart

我正在尝试从购物车页面中删除Woocommerce购物车数量选择器。我正在使用商店档案页面上的数量输入字段,并将其应用到购物车页面。如何删除它并且不允许用户更改它?

我在下面的代码中尝试了以下代码,从官方Woocommerce文档中进行了研究和发现,但它不适用于规则......

function wc_remove_quantity_field_from_cart() {

if ( is_cart() ) return true;

}

add_filter( 'woocommerce_is_sold_individually', 'wc_remove_quantity_field_from_cart', 10, 2 );

3 个答案:

答案 0 :(得分:4)

您的代码中存在的问题不仅仅是修复它。

而是使用它:

add_filter( 'woocommerce_cart_item_quantity', 'wc_cart_item_quantity', 10, 3 );
function wc_cart_item_quantity( $product_quantity, $cart_item_key, $cart_item ){
    if( is_cart() ){
        $product_quantity = sprintf( '%2$s <input type="hidden" name="cart[%1$s][qty]" value="%2$s" />', $cart_item_key, $cart_item['quantity'] );
    }
    return $product_quantity;
}

这会将选择字段更改为隐藏字段。因此数量是正确的。与更改sold individually属性不同,后者将使购物车上的数量仅为1。

reigelgallarde.me

答案 1 :(得分:0)

您刚刚错过了函数中的$return$product ...以下函数将使用内置钩子。

function wc_remove_quantity_field_from_cart( $return, $product ) {

if ( is_cart() ) return true;

}

add_filter( 'woocommerce_is_sold_individually', 'wc_remove_quantity_field_from_cart', 10, 2 );

答案 2 :(得分:0)

您可以尝试以下代码吗?

function wc_remove_all_quantity_fields( $return, $product ) {
    if(is_cart()){
        return true;
    }
}
add_filter( 'woocommerce_is_sold_individually', 'wc_remove_all_quantity_fields', 10, 2 );