Из этого кейса вы узнаете, как легко и быстро добавить скидку отдельному товару.
Virtuemart 2. Как добавить скидку отдельному товару (Кейс #5).

Интересно, что такая, казалось бы, простая задача, как добавление скидки отдельному товару, решается в Virtuemart 2 совершенно нетривиально. Из этого кейса вы узнаете, как легко и быстро добавить скидку отдельному товару.

Существует 2 варианта добавления скидки.

Вариант 1. Переопределение окончательной цены.

  1. Идем в настройки товара, которому хотим добавить скидку.
  2. В поле «Override» устанавливаем окончательную цену(цену со скидкой) и отмечаем опцию «Переписать окончательно».

Virtuemart 2. Как добавить скидку отдельному товару.

После выполнения этих действий на сайте видим новую цену и размер скидки в абсолютные единицах валюты.

Virtuemart 2. Как добавить скидку отдельному товару.

Этот вариант можно использовать, но он не очень удобен, когда требуется установить скидку в процентах от первоначальной цены. Придется сначала рассчитать конечную цену, а только после этого обновить ее в настройках товара.

Существует и второй вариант, гораздо более удобный, но совершенно неочевидный.

Вариант 2. Добавление скидки через «Налоги и правила рассчета».

На сайте есть статья, в которой подробно описывается раздел Virtuemart 2 «Налоги и правила расчета». В ней можно найти информацию о данном разделе и узнать о ценообразовании в Virtuemart. Но статья не затрагивает тему, как назначить скидку отдельному товару.

    1. Идем менеджер категорий Virtumart и создаем новую категорию с названием «Скидка 10%». Категорию сохраняем, но оставляем неопубликованной!
    2. Идем в «Налоги и правила расчета» и создаем новое правило с названием «Скидка 10%».
    3. В опции «Вид расчета» выбираем «Цена после уплаты налогов».
    4. В опции «Операция» выбираем «-%».
    5. В опции «Значение» вводим «10».
    6. В опции «Категории» выбираем категорию «Скидка 10%», созданную в п.1.
    7. Сохраняем.

Virtuemart 2. Как добавить скидку отдельному товару.

    1. Идем в настройки  товара, которому хотим добавить скидку.
    2. В опции «Окончательная цена» выбираем созданное правило «Скидка 10%».

 Virtuemart 2. Как добавить скидку отдельному товару.

  1. Сохраняем и проверяем на сайте.

Virtuemart 2. Как добавить скидку отдельному товару.

Что мы сделали? Мы создали скрытую категорию, которая отвечает за определенную скидку. После этого правило можно применить к отдельному товару, не добавляя его в дополнительную категорию. До этого сложно самостоятельно догадаться.

Аналогичным образом можно создать несколько правил для разных скидок или наценок и легко и быстро добавлять их отдельным товарам.

Понравилась статья? Сохраните себе на стену:

Ваша оценка материала очень важна для нас. Просим вас оценить статью или оставить отзыв в комментариях.

Комментарии  

0 # Скидка для товара с разными настраиваемыми полямиМаксим 13.08.2016 12:24
Пытался сделать так, как здесь описано, и как в статейке по ссылке. Все получается, но! У моего товара в карточке настраиваемыми полями выведены различные цвета (атрибуты корзины). Так вот, если сделать скидку 10% за 10 штук, то 10 зеленых кружек - скидка 10%, а вот если человек выберет 5 красных и 5 зеленых - скидки уже не получается. В корзине они считаются как разные товары, хотя заказаны из одной карточки. Можно как-то это побороть?
Ответить | Ответить с цитатой | Цитировать
0 # RE: Скидка для товара с разными настраиваемыми полямиWedal 16.08.2016 04:28
Максим, интересный вопрос... Никогда не думал в этом ключе. То, что в корзине это разные товары - логично, т.к. если доп. поле является атрибутом корзины, то оно уникализирует товар по свойству. Видимо это логика VM. Нельзя сказать, что она неправильная. Исправление скорее всего потребует хака. Также можно посмотреть в сторону предоставления скидки не в зависимости от количества купленного товара одного вида, а в зависимости от общей суммы в корзине.
Ответить | Ответить с цитатой | Цитировать
0 # RE: Virtuemart 2. Как добавить скидку отдельному товару (Кейс #5).Андрей 22.07.2016 12:59
Привет. Делаю как указано в варианте 2. Ставлю товару скидку 15%. Виртуемарт считает сумму правильно, но отображает в карточке товара "скидка: 17.62%" Откуда он их берет?
Ответить | Ответить с цитатой | Цитировать
0 # RE: Virtuemart 2. Как добавить скидку отдельному товару (Кейс #5).Wedal 08.08.2016 07:18
Андрей, по умолчанию VM не отображает скидку в процентах. Вы используете какой-то сторонний шаблон?
Ответить | Ответить с цитатой | Цитировать
0 # Спасибо за сохранение мозгаArkanum 23.05.2016 04:07
Совсем весь мозг себе пере**ахал. Скидка применяется ко всем товарам и это даже в VM3 такая телега. Неужели нельзя было сделать что-то уже с этим в новой версии VM)))

Спасибо, бро! Вот как знал, что в 6 утра найду решение, точно найду и нашёл. Ты сделал мой день. Спасибо! :) Кармую))
Ответить | Ответить с цитатой | Цитировать
0 # RE: Virtuemart 2. Как добавить скидку отдельному товару (Кейс #5).Сергей UA 30.11.2015 11:29
Гениально! Досконально! Превосходно! :lol:
Ответить | Ответить с цитатой | Цитировать
0 # RE: Virtuemart 2. Как добавить скидку отдельному товару (Кейс #5).Константин 31.07.2015 13:57
Спасибо, извращение с налогами помогло) но с джумлой всегда так=)
Ответить | Ответить с цитатой | Цитировать
+1 # RE: Virtuemart 2. Как добавить скидку отдельному товару (Кейс #5).Сергей Александрович 28.04.2015 08:46
в обоих ваших примерах ошибки в отображении цен прямо на ваших же скриншотах

в первом случае цена у вас в долларах 4,99 цену по скидке видимо хотели поставить 1 доллар, а на странице товара отображается - 1 рубль, со скидкой 150 рублей ))) что явная типичная ошибка интернет магазинов.
как поставить скидочную цену в уе? чтобы она отображалась нормально в пересчете на рубли (если магазин мультивалютный, часть товаров в руб, часть в у.е. основная валюта выбрана - российский рубль)

во втором случае не отобразилась у вас цена без скидки - цена со скидкой отображается равной цене без скидки.
Ответить | Ответить с цитатой | Цитировать
0 # RE: Virtuemart 2. Как добавить скидку отдельному товару (Кейс #5).Wedal 30.04.2015 03:53
Сергей, на первом скриншоте все верно. Если посмотрите внимательнее, под ценой в долларах уже установлена автоматически пересчитанная цена в рублях. Окончательную стоимость я установил в 1 руб. Соответственно, скидка составила разницу между начальной ценой в рублях и окончательной ценой.
Во втором случае тоже все нормально, только лишь перепутаны все названия для разных цен. Это проблема Virtuemart. Ее решение не представляется сложным. Достаточно просто изменить или скрыть названия цен и в общих настройках отметить галочкой базовую цену, чтобы она вывелась.
Чтобы задать скидку в долларах, при ее создании выбирайте соответствующую валюту, хотя для скидки в % валюта не имеет значания.
Ответить | Ответить с цитатой | Цитировать

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

Для отправки комментария введите код с картинки:
Защитный код
Обновить

Вверх