Это моя конфигурация WordPress (Просто обновил все, чтобы все было в курсе):
WordPress: 5.4
WooCommerce: 4.0.1
Правила скидок для WooCommerce : 1.9 .7
Правила скидок для конфигурации WooCommerce, за единицу количества:
1-4: 10%
5-24: 20%
25-99999: 30%
Это прекрасно работает в магазине, и магазин может даже получать заказы со скидками. Дело в том, что я хочу удалить SALE! значок из продуктов, поскольку он автоматически добавляется из-за количества блоков 1-4, что означает 10% скидку по всему сайту в соответствии с конфигурацией.
Теперь вот мой код в функциях темы. php
function wc_custom_replace_sale_text($html, $post, $product) {
if ($product->is_on_sale()) {
$regular_price = $product->get_regular_price();
$sale_price = $product->get_sale_price();
return '<span class="onsale force-display">' . $sale_price . '</span>';
}
}
add_filter( 'woocommerce_sale_flash', 'wc_custom_replace_sale_text', 10, 3 );
Проблема : Независимо от того, что я пытаюсь, я всегда получаю $product->get_sale_price()
результат всегда 0. И странно то, что $product_is_on_sale()
результат равен true
.
Из-за этого я не могу узнать скидку на продукт и поэтому не могу удалить метку SALE для блока количества 1-4.