WC_Product_Variable::get_price_html PHP Method

get_price_html() public method

Returns the price in html format.
public get_price_html ( string $price = '' ) : string
$price string (default: '')
return string
    public function get_price_html($price = '')
    {
        $prices = $this->get_variation_prices_including_taxes();
        if (empty($prices['price'])) {
            return apply_filters('woocommerce_variable_empty_price_html', '', $this);
        }
        $min_price = current($prices['price']);
        $max_price = end($prices['price']);
        if ($min_price !== $max_price) {
            $price = apply_filters('woocommerce_variable_price_html', wc_format_price_range($min_price, $max_price) . wc_get_price_suffix($this), $this);
        } else {
            $price = apply_filters('woocommerce_variable_price_html', wc_price($min_price) . wc_get_price_suffix($this), $this);
        }
        return apply_filters('woocommerce_get_price_html', $price, $this);
    }

Usage Example

 /**
  * Returns the price in html format.
  *
  * @access public
  * @param string $price (default: '')
  * @return string
  */
 public function get_price_html($price = '')
 {
     $price = parent::get_price_html($price);
     if (!isset($this->subscription_period) || !isset($this->subscription_period_interval) || !isset($this->max_variation_period) || !isset($this->max_variation_period_interval)) {
         $this->variable_product_sync();
     }
     // Only create the subscription price string when a price has been set
     if ($this->subscription_price !== '' || $this->subscription_sign_up_fee !== '') {
         $price = '';
         if ($this->is_on_sale() && isset($this->min_variation_price) && $this->min_variation_regular_price !== $this->get_price()) {
             if (!$this->min_variation_price || $this->min_variation_price !== $this->max_variation_price) {
                 $price .= $this->get_price_html_from_text();
             }
             $price .= $this->get_price_html_from_to($this->get_variation_price('min', true), $this->get_variation_price('max', true));
         } else {
             if ($this->min_variation_price !== $this->max_variation_price) {
                 $price .= $this->get_price_html_from_text();
             }
             $price .= wc_price($this->get_variation_price('min', true));
         }
         // Make sure the price contains "From:" when billing schedule differs between variations
         if (false === strpos($price, $this->get_price_html_from_text())) {
             if ($this->subscription_period !== $this->max_variation_period) {
                 $price = $this->get_price_html_from_text() . $price;
             } elseif ($this->subscription_period_interval !== $this->max_variation_period_interval) {
                 $price = $this->get_price_html_from_text() . $price;
             }
         }
         $price .= $this->get_price_suffix();
         $price = WC_Subscriptions_Product::get_price_html($price, $this);
     }
     return apply_filters('woocommerce_variable_subscription_price_html', $price, $this);
 }
All Usage Examples Of WC_Product_Variable::get_price_html