WC_Cart::get_product_subtotal PHP Méthode

get_product_subtotal() public méthode

Gets the tax etc to avoid rounding issues. When on the checkout (review order), this will get the subtotal based on the customer's tax rate rather than the base rate.
public get_product_subtotal ( WC_Product $product, integer $quantity ) : string
$product WC_Product
$quantity integer
Résultat string formatted price
    public function get_product_subtotal($product, $quantity)
    {
        $price = $product->get_price();
        $taxable = $product->is_taxable();
        // Taxable
        if ($taxable) {
            if ('excl' === $this->tax_display_cart) {
                $row_price = wc_get_price_excluding_tax($product, array('qty' => $quantity));
                $product_subtotal = wc_price($row_price);
                if ($this->prices_include_tax && $this->tax_total > 0) {
                    $product_subtotal .= ' <small class="tax_label">' . WC()->countries->ex_tax_or_vat() . '</small>';
                }
            } else {
                $row_price = wc_get_price_including_tax($product, array('qty' => $quantity));
                $product_subtotal = wc_price($row_price);
                if (!$this->prices_include_tax && $this->tax_total > 0) {
                    $product_subtotal .= ' <small class="tax_label">' . WC()->countries->inc_tax_or_vat() . '</small>';
                }
            }
            // Non-taxable
        } else {
            $row_price = $price * $quantity;
            $product_subtotal = wc_price($row_price);
        }
        return apply_filters('woocommerce_cart_product_subtotal', $product_subtotal, $product, $quantity, $this);
    }
WC_Cart