Когда я вошел в свою панель управления, промоушен и обычная цена работают, но для не авторизованных пользователей это не работает. Ниже приведен мой код, хотя я не добавил к этой функции никаких ролей и ограничений.
add_filter('woocommerce_available_variation', 'uteplassen_variation_fields', 99, 3);
function uteplassen_variation_fields($args, $product, $variation) {
if ($variation->is_on_sale()) {
$save = $args['display_regular_price'] - $args['display_price'];
$price_html .= sprintf('<div class="you-save save--class"><span class="text">Spar</span> %s</div>', wc_price($save).$product->get_price_suffix());
$price_html .= sprintf('<div class="sale-price">%s<span class="text">Kampanjepris</span></div>', wc_price($args['display_price']).$product->get_price_suffix());
$price_html .= sprintf('<div class="regular-price on-sale"><del>%s</del><span class="text if--r_price">Regulær pris</span></div>', wc_price($args['display_regular_price']).$product->get_price_suffix());
}
else {
$price_html = sprintf('<div class="regular-price reg--price">%s</div>', wc_price($args['display_price']).$product->get_price_suffix());
}
$args['price_html'] = $price_html;
return $args;
}