• Всем привет, ну тут нужна помощь гуру:
    Мне нужно сделать динамику цен на сайте следующим образом:
    если стоимость товаров не более 1000 руб. то наценка 200%
    если стоимость товаров не более 5000 руб. то наценка 100%
    если стоимость товаров не более 15000 руб. то наценка 50%
    если стоимость товаров не более 3000 руб. то наценка 20%

    Пробовал добавить такой фильтр →

    add_filter( 'woocommerce_get_price_html', 'cur_price', 10, 2);
    global $woocommerce;
    $product = new WC_Product(get_the_ID()); 
    $xprice = $product->get_price_html();
    function cur_price()
          {if($xprice <= 250){
    	$curprice = $xprice *3;
    } elseif ($xprice > 250 || $xprice <= 1000){
    	$curprice = $xprice *2;
    } elseif ($xprice > 1000 || $xprice <= 2500){
    	$curprice = $xprice *1.5;
    }
    else {
    	$curprice = $xprice *1.2;
    }
    return $curprice;
    }

    Всегда результат «0» но в корзине отображает обычную цену!

    Что странно так что потестировал с файлом /single-product/price.php
    вместо <p class="price"><?php echo $product->get_price_html(); ?></p>

    вставил свою функцию но вместо $product->get_price_html(); втавил $product->get_regular_price(); и все сработало (только на странице товара соответственно)

    Подскажите это фильтр не так делаю либо get_price_html(); отображается как не цифра а текст в виде цифр или в чем проблема??

    • Тема изменена 7 лет, 9 месяцев назад пользователем SeVlad. Причина: перенос в подходящий раздел и форматирование
  • Тема «Ценообразование на сайте» закрыта для новых ответов.