这可以通过以下代码轻松完成:
if( ! function_exists('get_formatted_product_tax_amount') ) {
function get_formatted_product_tax_amount( $atts ) {
// Attributes
$atts = shortcode_atts( array(
'id' => '0',
), $atts, 'tax_amount' );
global $product, $post;
if( ! is_object( $product ) || $atts['id'] != 0 ){
if( is_object( $post ) && $atts['id'] == 0 )
$product_id = $post->ID;
else
$product_id = $atts['id'];
$product = wc_get_product( $product_id );
}
if( is_object( $product ) ){
$price_excl_tax = wc_get_price_excluding_tax($product);
$price_incl_tax = wc_get_price_including_tax($product);
$tax_amount = $price_incl_tax - $price_excl_tax;
return wc_price($tax_amount);
}
}
add_shortcode( 'tax_amount', 'get_formatted_product_tax_amount' );
}
代码进入您的活动子主题(或活动主题)的 function.php 文件中。
经过测试和工作
用法 (示例):
1) 在单个产品页面中,在简短描述文本编辑器中:
Total tax amount for this product: [tax_amount]
2) 对于单个产品页面,在 php 代码中:
$text = __('Total tax amount for this product', 'woocommerce');
echo '<p>' . $text . ': ' . do_shortcode("[tax_amount]") . '</p>';
3) 在其他页面上,在文本编辑器中(将产品 ID 设置为参数):
Total tax amount for this product: [tax_amount id="37"]
4) 任何地方,在 php 代码中(将产品 ID 设置为参数):
$text = __('Total tax amount for this product', 'woocommerce');
echo '<p>' . $text . ': ' . do_shortcode("[tax_amount id='37']") . '</p>';