->regular_price code example
Example: $regular_price
global $post, $product;
if ($product->is_on_sale()) :
// Dans le cas où le produit est "variable" (plusieurs variations de produits existantes)
if ($product->get_type() == 'variable') :
$available_variations = $product->get_available_variations();
$max_percentage = 0;
// On passe au crible toutes les variations et calcule le pourcentage de réduction de chacune.
// Si ce pourcentage de réduction est le maximum, on le garde en mémoire dans $max_percentage
for ($i = 0; $i < count($available_variations); ++$i) {
$variation_id = $available_variations[$i]['variation_id'];
$variable_product1 = new WC_Product_Variation($variation_id);
$regular_price = $variable_product1->get_regular_price();
$sales_price = $variable_product1->get_sale_price();
$percentage = round(((($regular_price - $sales_price) / $regular_price) * 100), 1);
if ($percentage > $max_percentage) {
$max_percentage = $percentage;
}
}
echo apply_filters( 'woocommerce_sale_flash', '<span class="onsale">-' . round($max_percentage) . '%</span>', $post, $product );
// Si le produit n'est pas "variable" mais simple, nous n'avons qu'un prix normal et un prix promo... fastoche !
elseif ($product->get_type() == 'simple') :
$percentage = round( ( ( $product->get_regular_price() - $product->get_sale_price() ) / $product->get_regular_price() ) * 100 );
echo apply_filters( 'woocommerce_sale_flash', '<span class="onsale">-' . round($percentage) . '%</span>', $post, $product );
endif;
endif;