Автор Тема: Изменение цены при малом кол-ве товара  (Прочитано 551 раз)

21 Август 2015, 10:15:59
  • Пользователь
  • **
  • Сообщений: 95
  • Репутация: +0/-0
  • Сообщество PrestaShop
    • Просмотр профиля
Подскажите можно ли сделать так чтобы при кол-ве товара например 5 цена становилась другой (я сам задаю эту цену)? Я нашел вот это подойдет ли?


Для исправления нужно внети изменения в файл product.js и product.tpl. Находим строки и удаляем их

if (!isNaN(currentVal) && currentVal < quantityAvailableT)
        $('input[name='+fieldName+']').val(currentVal + 1).trigger('keyup');
        else
        $('input[name='+fieldName+']').val(quantityAvailableT);
 });

вместо них вставляем:

if (!isNaN(currentVal) && currentVal < quantityAvailableT) {
 $('input[name='+fieldName+']').val(currentVal + 1).trigger('keyup');
 var total = (productPrice * (currentVal + 1));
 var total = total.toFixed(2);
 $('p.our_price_display').fadeOut();
 $('span#our_price_display').text(total + ' ' + currencySign)
 $('p.our_price_display').fadeIn();
 } else {
 $('input[name='+fieldName+']').val(quantityAvailableT);
 }
 });

находим строки и снова удаляем:

if (!isNaN(currentVal) && currentVal > 1)
     $('input[name='+fieldName+']').val(currentVal - 1).trigger('keyup');
     else
     $('input[name='+fieldName+']').val(1);

вместо них вставляем:
if (!isNaN(currentVal) && currentVal > 1) {
 $('input[name='+fieldName+']').val(currentVal - 1).trigger('keyup');
 var total = (productPrice * (currentVal - 1));
 var total = total.toFixed(2);
 $('p.our_price_display').fadeOut();
 $('span#our_price_display').text(total - ' ' + currencySign)
 $('p.our_price_display').fadeIn();
 } else {
 $('input[name='+fieldName+']').val(1);
 }

с продукт.tpl аналогично.

Чистим кеш и радуемся результатом
21 Август 2015, 11:07:54
Ответ #1
  • Модератор
  • Ветеран
  • *****
  • Сообщений: 33325
  • Репутация: +26771/-0
    • Просмотр профиля
В админке это можно сделать. Для этого есть специальные цены. У товара добавляете новое правило в разделе Цены, в условиях устанавливаете количество 5. Никаких изменений в коде делать ненужно.
21 Август 2015, 11:32:43
Ответ #2
  • Пользователь
  • **
  • Сообщений: 95
  • Репутация: +0/-0
  • Сообщество PrestaShop
    • Просмотр профиля
21 Август 2015, 12:01:49
Ответ #3
  • Пользователь
  • **
  • Сообщений: 95
  • Репутация: +0/-0
  • Сообщество PrestaShop
    • Просмотр профиля
В админке это можно сделать. Для этого есть специальные цены. У товара добавляете новое правило в разделе Цены, в условиях устанавливаете количество 5. Никаких изменений в коде делать ненужно.

Хотя нет, не сработало, это оптовые скидки, а мне нужно повышение цены, а там считает скидку от кол-ва 5. Я решил другим способом, я указал атрибуты на товар, когда товара нет, можно выбрать другой атребут и там будет другая цена