删除 woocommerce 购物车(按国家/地区估计)税文本
Remove woocommerce cart (estimated by country) tax text
我正在用 wordpress 建立一个网站,当我进入购物车时,它不断弹出
“(估计为澳大利亚)”在 TAX 之后给出 item/s 的税值。
我在这里检查了另一个问题和答案,但它们的代码与我的代码不同。我尝试了一些不同的东西,但无法弄清楚。
这是我在 google chrome 上检查购物车时的代码。
<tr class="tax-total">
<th>Tax <small>(estimated for Australia)</small></th>
<td data-title="Tax">
<span class="woocommerce-Price-amount amount">
<span class="woocommerce-Price-currencySymbol">$</span>109.80</span>
</td>
</tr>
谁能帮我解决过滤器问题?
您可以通过编辑主题的 WooCommerce 购物车模板文件来完成。我想这是硬编码在 cart.php.
或者,如果您想要更简单的解决方案,只需使用 CSS 隐藏它即可。
此代码隐藏了“({country} 的估计值)”部分:
.tax-total th small {display:none!important}
这个隐藏
.tax-total {display:none!important}
该行为的负责函数是 wc_cart_totals_order_total_html()
......但希望您可以使用以下代码挂钩函数更改它:
add_filter( 'woocommerce_cart_totals_order_total_html', 'filtering_cart_totals_order_total_html', 20, 1 );
function filtering_cart_totals_order_total_html( $value ){
$value = '<strong>' . WC()->cart->get_total() . '</strong> ';
// If prices are tax inclusive, show taxes here.
if ( wc_tax_enabled() && WC()->cart->display_prices_including_tax() ) {
$tax_string_array = array();
$cart_tax_totals = WC()->cart->get_tax_totals();
if ( get_option( 'woocommerce_tax_total_display' ) == 'itemized' ) {
foreach ( $cart_tax_totals as $code => $tax ) {
$tax_string_array[] = sprintf( '%s %s', $tax->formatted_amount, $tax->label );
}
} elseif ( ! empty( $cart_tax_totals ) ) {
$tax_string_array[] = sprintf( '%s %s', wc_price( WC()->cart->get_taxes_total( true, true ) ), WC()->countries->tax_or_vat() );
}
if ( ! empty( $tax_string_array ) ) {
$value .= '<small class="includes_tax">' . sprintf( __( '(includes %s)', 'woocommerce' ), implode( ', ', $tax_string_array ) ) . '</small>';
}
}
return $value;
}
代码进入您的活动子主题(或活动主题)的 function.php 文件。 已测试并有效。
您将获得:
而不是:
这是 Woocommerce 3.2+ 的更新,略有不同,基于此答案:
我正在用 wordpress 建立一个网站,当我进入购物车时,它不断弹出
“(估计为澳大利亚)”在 TAX 之后给出 item/s 的税值。
我在这里检查了另一个问题和答案,但它们的代码与我的代码不同。我尝试了一些不同的东西,但无法弄清楚。
这是我在 google chrome 上检查购物车时的代码。
<tr class="tax-total">
<th>Tax <small>(estimated for Australia)</small></th>
<td data-title="Tax">
<span class="woocommerce-Price-amount amount">
<span class="woocommerce-Price-currencySymbol">$</span>109.80</span>
</td>
</tr>
谁能帮我解决过滤器问题?
您可以通过编辑主题的 WooCommerce 购物车模板文件来完成。我想这是硬编码在 cart.php.
或者,如果您想要更简单的解决方案,只需使用 CSS 隐藏它即可。
此代码隐藏了“({country} 的估计值)”部分:
.tax-total th small {display:none!important}
这个隐藏
.tax-total {display:none!important}
该行为的负责函数是 wc_cart_totals_order_total_html()
......但希望您可以使用以下代码挂钩函数更改它:
add_filter( 'woocommerce_cart_totals_order_total_html', 'filtering_cart_totals_order_total_html', 20, 1 );
function filtering_cart_totals_order_total_html( $value ){
$value = '<strong>' . WC()->cart->get_total() . '</strong> ';
// If prices are tax inclusive, show taxes here.
if ( wc_tax_enabled() && WC()->cart->display_prices_including_tax() ) {
$tax_string_array = array();
$cart_tax_totals = WC()->cart->get_tax_totals();
if ( get_option( 'woocommerce_tax_total_display' ) == 'itemized' ) {
foreach ( $cart_tax_totals as $code => $tax ) {
$tax_string_array[] = sprintf( '%s %s', $tax->formatted_amount, $tax->label );
}
} elseif ( ! empty( $cart_tax_totals ) ) {
$tax_string_array[] = sprintf( '%s %s', wc_price( WC()->cart->get_taxes_total( true, true ) ), WC()->countries->tax_or_vat() );
}
if ( ! empty( $tax_string_array ) ) {
$value .= '<small class="includes_tax">' . sprintf( __( '(includes %s)', 'woocommerce' ), implode( ', ', $tax_string_array ) ) . '</small>';
}
}
return $value;
}
代码进入您的活动子主题(或活动主题)的 function.php 文件。 已测试并有效。
您将获得:
而不是:
这是 Woocommerce 3.2+ 的更新,略有不同,基于此答案: