滑动继续阅读⇓

如何在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类别和标签了!

本文是否有帮助?



iTopVPN Black Friday Deal - Save up to 90%