Adicionando a porcentagem de desconto a produtos variáveis à venda
Estou tentando adicionar uma porcentagem de desconto de lado em um site que usa o WooCommerce.
Eu apliquei este script para o preço padrão e o preço de venda:
// Add save percentage next to sale item prices.
add_filter( 'woocommerce_get_price_html', 'adventure_tours_sales_price', 10, 2 );
function adventure_tours_sales_price( $price, $product ){
$percentage = round( ( ( $product->regular_price - $product->sale_price ) / $product->regular_price ) * 100 );
return $price . sprintf( __(' Save %s', 'woocommerce' ), $percentage . '%' );
}
O script acima funciona.
No front-end, tenho a porcentagem de preço.
Agora, quero aplicar o mesmo script ao preço de variação do produto.
Marquei a opção de variação do produto e tentei algo como isto:
// Add save percentage next to sale item prices.
add_filter( 'woocommerce_get_price_html', 'adventure_tours_sales_price', 10, 2 );
function adventure_tours_sales_price( $price, $product ){
if( $product->is_type( 'variable' ) ) {
$percentage = round( ( ( $product->regular_price - $product->sale_price ) / $product->regular_price ) * 100 );
return $price . sprintf( __(' Save %s', 'woocommerce' ), $percentage . '%' );
}else{
$percentage = round( ( ( $product->regular_price - $product->sale_price ) / $product->regular_price ) * 100 );
return $price . sprintf( __(' Save %s', 'woocommerce' ), $percentage . '%' );
}
}
Mas isso não funciona, a porcentagem não é aplicada ao preço.
Nem no front-end.