繁体   English   中英

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

[英]Show tax amount from a single product in woocommerce

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

最佳解决方案是直接在 php 函数中进行 math(productprice * 0,25) 并回显结果,因为我们出售我们的产品不含税。 编写此脚本的原因是向我们的客户展示从非欧盟国家/地区进口产品期间他们将支付的税款。

即产品价格:$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>';

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM