• Никакой политики на форуме. Иначе - бан!
  • Вопрос без рабочей ссылки на проблему считается риторическим. Без ссылки и скриншота - провокацией!
  • Темы озаглавленные с маленькой буквы или капсом удаляются без предупреждения!

Как заменить цену на текстовую надпись

Reddington

Новичок
Ковыряю Woocommerce, нужно сделать следующее:
1) если цена = 0, то выводим "уточняйте у менеджера"
2) если цена не указана = "товар снят с производства"

Я прописал в functions.php следующее:
Код:
add_filter( 'woocommerce_get_price_html', 'my_price_replace', 1, 2 );
function my_price_replace($price, $product) {
if ($product->get_price() == 0 ) return __( '<span class="woocommerce-Price-amount amount">Уточняйте у менеджера</span>' );
return $price;
}


add_filter('woocommerce_empty_price_html', 'empty_price_message');
function empty_price_message() {
    return '<span class="woocommerce-Price-amount amount">Снят с производства</span>';
}

Однако, у меня при цене = 0 и пустой цене один хрен выводится "уточняйте у менеджера", если же код для = 0 удалить, то при пустой цене указывает "снят с производства", а при нулевой так и пишет 0руб.

В чем моя ошибка?
Или тут нельзя отдельно прописать для нуля и отдельно для пустой?
 

DenFunk

Новичок
Попробуйте поставить get_price()===0, нужно проверить и тип данных.
 
Сверху Снизу