滑动继续阅读»
【阿里云感恩回馈,云产品冰点价】最高31%返现 • 云服务器96.00元/年 • 产品低至1.3折
莫比水阻划船机家用健身器材静音划船器折叠智能纸牌屋运动划桨机

如何在WooCommerce中隐藏购物车小计

如果你想隐藏WooCommerce购物车页面中的小计行,你可以使用CSS或你可以使用取消设置car_subtotal值的过滤器钩子。这是一个简单的过程,你可以在WordPress主题中实施。

在WooCommerce中删除购物车小计

你可以在“functions.php”中添加一个代码片段,以使用过滤器钩子去除小计。或者,你可以使用CSS显示属性来定位具有该行的div元素并将其设置为隐藏。

如何在WooCommerce中隐藏购物车小计

使用代码将WooCommerce中的购物车小计隐藏

WooCommerce使用CSS隐藏购物车小计

要使用CSS隐藏订单小计行,你应该使用浏览器上的检查元素工具来获取显示此文本的div元素,当你选择此div时,将显示属性应用到none(不选),如下所示隐藏小计行购物车页面。

以下是你应该添加到主题CSS或自定义程序额外CSS区域的代码:

.cart-subtotal {
 
      display: none;
 
}

你还可以使用可见性属性,如下面的代码所示:

.cart-subtotal {
 
      visibility: hidden;
 
}

将此代码添加到子主题的样式表,或者添加定制器并保存更改以隐藏购物车中的小计一行。

这种隐藏不会完全删除购物车小计,它只是隐藏以完全移除它,所以你需要添加一个过滤器钩子。

WooCommerce使用过滤器钩子删除小计

要使用过滤器从购物车和订单页面中删除小计,你应该将此代码添加到“functions.php”文件。

1) 移除购物车总数:

// 在购物车页面
add_action( 'woocommerce_cart_collaterals', 'remove_cart_totals', 9 );
function remove_cart_totals(){
    // 删除购物车总计
    remove_action( 'woocommerce_cart_collaterals', 'woocommerce_cart_totals', 10 );

    // 添加返回“继续结帐”按钮(和钩子)
    echo '<div class="cart_totals">';
    do_action( 'woocommerce_before_cart_totals' );

    echo '<div class="wc-proceed-to-checkout">';
    do_action( 'woocommerce_proceed_to_checkout' );
    echo '</div>';

    do_action( 'woocommerce_after_cart_totals' );
    echo '</div><br clear="all">';
}

2)移除结帐总数:

// 在结账页面
add_action( 'woocommerce_checkout_order_review', 'remove_checkout_totals', 1 );
function remove_checkout_totals(){
    // 删除购物车总计
    remove_action( 'woocommerce_checkout_order_review', 'woocommerce_order_review', 10 );
}

总结

在这篇文章中,我们研究了可用于在WooCommerce购物车页面中删除小计的两个选项。如果你只是想隐藏小计,你只需要使用CSS,因为它不那么复杂且易于添加到任何WordPress主题中。

附:从WooCommerce购物车和结帐页面中删除小计行

1) 可用于所有订单页面和邮件通知(收到订单、订单支付、订单详情和邮件模板)

代码有效的从总计行中删除小计行:

add_filter( 'woocommerce_get_order_item_totals', 'remove_subtotal_from_orders_total_lines', 100, 1 );
function remove_subtotal_from_orders_total_lines( $totals ) {
    unset($totals['cart_subtotal']  );
    return $totals;
}

代码可贴于活跃子主题的function.php文件中,测试有效。

从WooCommerce购物车和结帐页面中删除小计行

删除WooCommerce购物车和结帐页面中的小计行

2) 用于购物车和结帐页面:

需要在活跃主题下为以下模板创建一个单独的“woocommerce”文件夹

对于购物车页面 – cart/cart-totals.php | 删除第32至35行的代码块:

<tr class="cart-subtotal">
    <th><?php _e( 'Subtotal', 'woocommerce' ); ?></th>
    <td data-title="<?php esc_attr_e( '小计', 'woocommerce' ); ?>"><?php wc_cart_totals_subtotal_html(); ?></td>
</tr>

对于结帐页面 – checkout/review-order.php | 删除第58行到第61行的代码块:

<tr class="cart-subtotal">
    <th><?php _e( 'Subtotal', 'woocommerce' ); ?></th>
    <td><?php wc_cart_totals_subtotal_html(); ?></td>
</tr>

保存这两个模板…… 完美完成。

续:如何删除WooCommerce产品页面中的类别和标签?

可以把下面的代码添加到子主题的functions.php文件中。

/* 从单个产品中删除类别 */ 
remove_action( 'woocommerce_single_product_summary', 'woocommerce_template_single_meta', 40 );

或者有另一种方法可以从WooCommerce产品页面隐藏类别。

以下是可以在外观 > 自定义 > 额外CSS中添加的代码:

.product_meta .posted_in {display: none !important;}

如果想在WooCommerce产品页面中删除类别和标签,那么你可以在CSS中使用以下代码:

.product_meta{
    display: none !important;
    }

这样就可以完美移除WooCommerce类别和标签了!


【阿里云感恩回馈,云产品冰点价】最高31%返现 • 云服务器96.00元/年 • 产品低至1.3折