我尝试做一件非常简单的事,但对我来说,我不能让它发挥作用。
这是来自wc-cart-functions.php
if ( ! empty( $tax_string_array ) ) {
$taxable_address = WC()->customer->get_taxable_address();
$estimated_text = WC()->customer->is_customer_outside_base() && ! WC()->customer->has_calculated_shipping()
? sprintf( ' ' . __( 'estimated for %s', 'woocommerce' ), WC()->countries->estimated_for_prefix( $taxable_address[0] ) . WC()->countries->countries[ $taxable_address[0] ] )
: '';
$value .= '<small class="includes_tax">' . sprintf( __( '(includes %s)', 'woocommerce' ), implode( ', ', $tax_string_array ) . $estimated_text ) . '</small>';
}
}
echo apply_filters( 'woocommerce_cart_totals_order_total_html', $value );
}
如果应用任何 $fee
,则$ value应该不同。
但是,如果我检查,我只会从 0.00 €
变量获得 $fee
值。
有人可以帮助我简单地在变量中应用FEE的值并检查一个简单的 if
子句,如:
如果适用费用---&gt; 1
否则---&gt; 2个
我该怎么做?
答案 0 :(得分:0)
如您所见,您可以使用位于该woocommerce_cart_totals_order_total_html
核心代码中的 wc-cart-functions.php
过滤器钩子来更改大型购物车总额的输出:
add_filter( 'woocommerce_cart_totals_order_total_html', 'custom_cart_totals_order_total_html', 10, 1 );
function custom_cart_totals_order_total_html( $value ) {
// Get the fee cart amount
$fees_total = WC()->cart->fee_total;
// HERE is the condition
if( ! empty($fees_total) && $fees_total != 0 ){
// Change/customize HERE $value (just for test)
$value .= " <small>($fees_total)<small>";
}
// Always return $value
return $value;
}
代码放在活动子主题(或主题)的function.php文件中,或者放在任何插件文件中。
此代码经过测试并有效。
永远不要覆盖核心文件,因为这是禁止的,危险的,并且由于许多原因而不方便
您需要在$value