在 woocommerce 中显示单个产品的税额

Show tax amount from a single product in woocommerce

我想添加一个 woocommerce 功能,该功能创建一个简码,用于在产品页面中显示单个产品的税额。

最佳解决方案是直接在 php 函数中计算 (productprice * 0,25) 并回显结果,因为我们销售的产品是免税的。这个脚本的原因是向我们的客户展示他们在从 none 欧盟国家/地区进口产品时大约要支付多少税。

即 产品价格:$100 税率 25 % 税额 $25

我想用短代码显示税额,如下所示:

该产品的总税额:25 美元

谢谢!

这可以使用以下代码轻松完成:

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>';