You can get the tax data used for an item (product) through WC_Order_Item_Product
object and methods:
// Get the an occurrence of the WC_Order object (if needed, from a defined $order ID) $order = wc_get_order( $order_id ); // Iterating through WC_Order_Item_Product objects foreach( $order->get_items() as $item_id => $line_item ){ ## -- Get all protected data in an accessible array -- ## $item_data = $line_item->get_data(); // Get the Tax data in an array $item_tax_class = $item_data['tax_class']; $item_subtotal_tax = $item_data['subtotal_tax']; $item_total_tax = $item_data['total_tax']; $item_taxes_array = $item_data['taxes']; ## -- OR Use WC_Order_Item_Tax methods -- ## $item_tax_class = $line_item->get_tax_class(); // Tax class $item_subtotal_tax = $line_item->get_subtotal_tax(); // Line item name $item_total_tax = $line_item->get_total_tax(); // Tax rate code $item_taxes_array = $line_item->get_taxes(); // Tax detailed Array }
Also you can get Tax data (like shipping) through WC_Order_Item_Tax
object and methods
// Get the an occurrence of the WC_Order object (if needed, from a defined $order ID) $order = wc_get_order( $order_id ); // Iterating through WC_Order_Item_Tax objects foreach( $order->get_items( 'tax' ) as $item_id => $item_tax ){ ## -- Get all protected data in an accessible array -- ## $tax_data = $item_tax->get_data(); // Get the Tax data in an array $item_tax_rate_code = $tax_data['rate_code']; $item_tax_rate_id = $tax_data['rate_id']; $item_tax_label = $tax_data['label']; $item_tax_total = $tax_data['tax_total']; // Tax total amount $item_tax_shipping_total = $tax_data['shipping_tax_total']; // Tax shipping total ## -- OR Use WC_Order_Item_Tax methods -- ## $item_type = $item_tax->get_type(); // Line item type $item_name = $item_tax->get_name(); // Line item name $rate_code = $item_tax->get_rate_code(); // Tax rate code $tax_rate_label = $item_tax->get_label(); // Tax label $tax_rate_id = $item_tax->get_rate_id(); // Tax rate ID $compound = $item_tax->get_compound(); // Tax compound $tax_amount_total = $item_tax->get_tax_total(); // Tax rate total $tax_shipping_total = $item_tax->get_shipping_tax_total(); // Tax shipping total }
by LoicTheAztec
function woocommerce_template_display_tax() { global $product; $tax_rates = WC_Tax::get_rates( $product->get_tax_class() ); if (!empty($tax_rates)) { $tax_rate = reset($tax_rates); echo sprintf(_x('Inclusive %.2f %% tax', 'Text for tax rate. %.2f = tax rate', 'wptheme.foundation'), $tax_rate['rate']); } }