Перейти к содержимому
BIS Arts
  • Услуги
    • Создание сайта под ключ
    • Одностраничный лендинг-сайт
    • Многостраничный сайт
    • Интернет-магазин
    • Обслуживание и доработки сайта
    • Разработка логотипа
  • Уроки
  • Портфолио
  • Отзывы
  • Контакты
  • Услуги
    • Создание сайта под ключ
    • Одностраничный лендинг-сайт
    • Многостраничный сайт
    • Интернет-магазин
    • Обслуживание и доработки сайта
    • Разработка логотипа
  • Уроки
  • Портфолио
  • Отзывы
  • Контакты
Whatsapp Max
+7(900)247-59-69
Главная / Уроки / Woocommerce / Woocommerce: добавляем к цене префикс "от"

Woocommerce: добавляем к цене префикс "от"

  • 5 октября, 2023
  • Нет комментариев
Префикс "от" к цене
Содержание

В данной статье мы разберем, как в Woocommerce добавить префикс цена "от" для простых и вариативных товаров. Это простой способ без использования плагинов, нужно всего-лишь прописать небольшой код.

Добавляем "от" к цене товара

Куда вставлять код

Нужный код необходимо добавить в файл functions.php вашей темы. Желательно использовать дочернюю тему, чтобы код не стёрся при её обновлении.

Префикс "Цена от" для всех товаров

Если необходимо добавить перед стоимостью любых товаров префикс "от" или любой другой, то используем следующий код:

/* Вывод текста "от" перед ценой любого товара */
add_filter( 'woocommerce_get_price_html', 'bis_add_price_prefix', 20, 2 );
  
function bis_add_price_prefix( $price, $product ){
    $price = 'от ' . $price;
    return $price;
}

Префикс "Цена от" для вариативных товаров

Этот код следует использовать, когда вы хотите у вариативных товаров заменить стандартный вывод, например "900 р - 2400 р" на "от 900 р".

/* Добавление приставки "от" для вариативных товаров */
add_filter( 'woocommerce_variable_price_html', 'bis_add_variation_price_prefix', 20, 2 );
function bis_add_variation_price_prefix( $price, $product ) {
 
    $min_regular_price = $product->get_variation_regular_price( 'min', true );
    $min_sale_price = $product->get_variation_sale_price( 'min', true );
    $max_regular_price = $product->get_variation_regular_price( 'max', true );
    $max_sale_price = $product->get_variation_sale_price( 'max', true );
 
    if ( ! ( $min_regular_price == $max_regular_price && $min_sale_price == $max_sale_price ) ) {
        if ( $min_sale_price < $min_regular_price ) {
            $price = sprintf( 'от <del>%1$s</del><ins>%2$s</ins>', wc_price( $min_regular_price ), wc_price( $min_sale_price ) );
        } else {
            $price = sprintf( 'от %1$s', wc_price( $min_regular_price ) );
        }
    }
    return $price; 
}

Работоспособность обоих способов проверена на Woocommerce версии 4.3.6

Имейте ввиду, что на каких-то темах и других версиях плагина код может не сработать.

Добавить комментарий Отменить ответ

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Категории
Сайтостроение
Сайтостроение
WordPress
WordPress
WooCommerce
Elementor
elementor
Дизайн
Монетизация
Монетизация
реклама
BIS Arts

Услуги по созданию и обслуживанию сайтов

  • Услуги
  • Портфолио
  • Отзывы
+7 (900) 247-59-69
пн-пт с 10:00 до 19:00
Whatsapp Max Telegram Envelope
Copyright © 2013 — 2025 BIS Arts
Политика конфиденциальности
  • Услуги
    • Создание сайта под ключ
    • Одностраничный лендинг-сайт
    • Многостраничный сайт
    • Интернет-магазин
    • Обслуживание и доработки сайта
    • Разработка логотипа
  • Уроки
  • Портфолио
  • Отзывы
  • Контакты
  • +7 (900) 247-59-69
  • Написать в Whatsapp
  • Написать в Telegram
  • Написать в Max
Свяжитесь с нами
  • Позвонить
  • Написать в WhatsApp
  • Написать в Telegram
  • Написать в Max
  • Написать письмо
Позвонить
Написать в WhatsApp
Написать в Telegram
Написать письмо