@Evdokim001
PHP & WordPress developer

Как задать правило для данной функции?

Добрый день уважаемые коллеги. Возникла одна проблема которую не получается решить. Написал код что если цена товара будет равна нулю или просто не записано то должно выводиться словосочетание By request. Данная идея получилась, однако не получается добавить на страницу товара кнопку. То есть кнопка должна быть только на тех страницах где есть by request. Кнопка должна быть под строчкой Tags. Под ценой получается сделать, а под Tags нет.
function product_price_free_zero_empty( $price, $product ){
if ( '' === $product->get_price() || 0 == $product->get_price() ) {
    $price = '<span class="woocommerce-Price-amount amount">By request</span>';
}
return $price;
}
  • Вопрос задан
  • 68 просмотров
Решения вопроса 1
@Kontrael
У вас не верный подход в принципе. Вы смешиваете логику и представление, но это отдельная тема.

Вот это:
if ( '' === $product->get_price() || 0 == $product->get_price() )

Вообще можно заменить на
if (!$product->get_price())

И тогда необходимость в функции
product_price_free_zero_empty
отпадает.
В коде, который собирает html страницы пишете что-то вроде:
if (!$product->get_price()){
    echo '<span class="woocommerce-Price-amount amount">By request</span>';
}

А под тегами, где нужна кнопка:
if (!$product->get_price()){
    echo '<input type="button" value="Кнопка" /> ';
}
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы