我的WooCommerce商店有自定义增值税的产品。我必须在单一产品页面上展示它。我实际的单产品页面是这样的:
<?php
/**
* Single Product Price, including microdata for SEO
*
* This template can be overridden by copying it to yourtheme/woocommerce/single-product/price.php.
*
* HOWEVER, on occasion WooCommerce will need to update template files and you
* (the theme developer) will need to copy the new files to your theme to
* maintain compatibility. We try to do this as little as possible, but it does
* happen. When this occurs the version of the template file will be bumped and
* the readme will list any important changes.
*
* @see https://docs.woocommerce.com/document/template-structure/
* @author WooThemes
* @package WooCommerce/Templates
* @version 2.4.9
*/
if ( ! defined( 'ABSPATH' ) ) {
exit; // Exit if accessed directly
}
global $product;
?>
<div class="offers" itemprop="offers" itemscope itemtype="http://schema.org/Offer">
<div class="price"><?php echo $product->get_price_html(); ?></div>
<div class="vat">
VAT: ?%
</div>
<!--div class="woocommerce-variation-availability">
<?php echo $product->get_stock_quantity(); ?>
</div-->
<meta itemprop="price" content="<?php echo esc_attr( $product->get_display_price() ); ?>" />
<meta itemprop="priceCurrency" content="<?php echo esc_attr( get_woocommerce_currency() ); ?>" />
<link itemprop="availability" href="http://schema.org/<?php echo $product->is_in_stock() ? 'InStock' : 'OutOfStock'; ?>" />
</div>
如何打印该产品的自定义增值税?
要获取税额,可以这样执行:
$with_tax = $product->get_price_including_tax();
$without_tax = $product->get_price_excluding_tax();
$tax_amount = $with_tax - $without_tax;
echo woocommerce_price($tax_amount ); // this will echo the tax amount properly formatted.
// and the percentage would be:
$percent = ($tax_amount / $without_tax) * 100;
echo 'tax rate is ' . $percent . '%';
我想在价格后缀后添加税值(我将此代码添加到function.php)
add_filter( 'woocommerce_get_price_suffix', 'kk_woocommerce_get_percentage_suffix', 10, 2 );
function kk_woocommerce_get_percentage_suffix( $price_display_suffix, $product ) {
$tax_rate_info = 0;
// get Tax info:
$tax_rates = WC_Tax::get_rates( $product->get_tax_class() );
if (!empty($tax_rates)) {
$tax_rate = reset($tax_rates);
$tax_rate_info = (int)$tax_rate['rate'];
}
else {
// ...something here
}
//var_dump($tax_rate);
$price_display_suffix = $price_display_suffix .' ('. $tax_rate_info . '%)';
return $price_display_suffix;
}
这段代码帮助我在WooCommerce获得税收价值:https://stackoverflow.com/a/45634171/318380