Cześć,
w moim WordPress'ie mam kilka wariacji danego produktu. Do każdego jest inna cena, podczas zmiany wyboru selecta na np inną okładkę chciałem napisać sobie skrypt który by zmieniał w czasie rzeczywistym cenę. Napisałem sobie całość w php'ie i próbowałem to zrobić przez return który pobiera z funkcji wyświetlającej wszystkie opcje jednak nie działa. Jak mogę zobić to inaczej? Mój kod:
add_filter('woocommerce_variable_price_html', 'custom_variation_price', 10, 2);
function custom_variation_price( $price, $product ) {
foreach($product->get_available_variations() as $pav){
$def=true;
foreach($product->get_variation_default_attributes() as $defkey=>$defval){
if($pav['attributes']['attribute_'.$defkey]!=$defval){
$def=false;
}
}
if($def){
$variation_id=$pav['variation_id'];
$variable_product1= new WC_Product_Variation( $variation_id );
$regular_price = $variable_product1->regular_price;
$sales_price = $variable_product1->sale_price;
$price = $pav['display_price'];
}
}
if (empty($sales_price)) {
echo '<span class="price"><span class="woocommerce-Price-amount amount">'.$regular_price.' <span class="woocommerce-Price-currencySymbol">zł</span></span> </span>';
} else {
echo '<span class="price"><del><span class="woocommerce-Price-amount amount">'.$regular_price.' <span class="woocommerce-Price-currencySymbol">zł</span></span></del> <ins><span class="woocommerce-Price-amount amount">'.$sales_price.' <span class="woocommerce-Price-currencySymbol">zł</span></span></ins></span>';
}
}