

Добавление Товаров В Корзину
#1
Отправлено 07 Сентябрь 2017 - 16:05
Например, товар идет с минимальным кол-вом продажи 5 упак. Чтобы в карточке товара и в корзине автоматически устанавливалось кол-во минимальное 5 и при нажатии на "+" - 10 - 15 и т.д?
При этом сейчас вроде в админке есть функция единицы измерения "уп".
#2
Отправлено 07 Сентябрь 2017 - 18:54
Ribka (07 Сентябрь 2017 - 16:05) писал:
Например, товар идет с минимальным кол-вом продажи 5 упак. Чтобы в карточке товара и в корзине автоматически устанавливалось кол-во минимальное 5 и при нажатии на "+" - 10 - 15 и т.д?
При этом сейчас вроде в админке есть функция единицы измерения "уп".
#3
Отправлено 07 Сентябрь 2017 - 19:37
Stasya (07 Сентябрь 2017 - 18:54) писал:
А если таких товаров будет много? Каждое вручную нужно будет делать, с помощью кода? + я же добавляю новые товары. Не всегда же мне вас дергать

#4
Отправлено 11 Сентябрь 2017 - 13:30
Ribka (07 Сентябрь 2017 - 19:37) писал:

#5
Отправлено 11 Сентябрь 2017 - 20:33
Stasya (11 Сентябрь 2017 - 13:30) писал:
Добрый вечер! А, я все поняла,что вы имели ввиду. Меня смутила фраза в вашем предыдущем сообщении "то добавьте данную характеристику к товарам и сообщите нам названия данных товаров." и поэтому решила, что такой процесс нужно проделывать с каждым товаром. Спасибо большое за ответ. в ближайшее время я отпишусь, как только будут готовы товары.
#6
Отправлено 13 Сентябрь 2017 - 10:27
Ribka (11 Сентябрь 2017 - 20:33) писал:
#7
Отправлено 19 Сентябрь 2017 - 21:48
Stasya (13 Сентябрь 2017 - 10:27) писал:
Добрый день!
Сделали пару товаров:
- Блесна вращающаяся Mikado ZIGZAG № 3 / 15 г. серебро уп.=5 шт., шт
- БЛЕСНА КОЛЕБЛЮЩАЯСЯ MIKADO ROACH № 2 / 10 Г. / 5.1 СМ. - ЗОЛОТО УП.=5 Ш
К этим товарам добавили новую характеристику Минимальное количество с нужным значением.
#8
Отправлено 19 Сентябрь 2017 - 22:27
Ribka (19 Сентябрь 2017 - 21:48) писал:
Сделали пару товаров:
- Блесна вращающаяся Mikado ZIGZAG № 3 / 15 г. серебро уп.=5 шт., шт
- БЛЕСНА КОЛЕБЛЮЩАЯСЯ MIKADO ROACH № 2 / 10 Г. / 5.1 СМ. - ЗОЛОТО УП.=5 Ш
К этим товарам добавили новую характеристику Минимальное количество с нужным значением.
+ хотелось бы к таким товарам (которые отпускаются от минимального кол-ва) выводить определенную надпись - https://prnt.sc/gn6iof
Можно ли ее прописывать в описании модификации? и как сделать разный цвет шрифта. Думаю, автоматически так сделать будет сложно, т.к. 5 штук, 24 штуки
#9
Отправлено 20 Сентябрь 2017 - 08:17
Зайдите в раздел Сайт - Редактор шаблонов - Товар - найдите:
<!-- Артикул --> {% IF GOODS_MOD_ART_NUMBER %} <div class="goodsDataMainModificationArtNumber f-fix"> Артикул: <span>{GOODS_MOD_ART_NUMBER}</span> </div> {% ENDIF %}
перед ним вставьте:
<!-- Минимальное количество --> {% IFNOT goods_features_empty %}{% FOR goods_features %}{% IF goods_features.NAME=Минимальное количество %} <div class="min_quant"> <span>Этот товар продается по {goods_features.VALUE} штук.</span> <span>Цена указана за штуку</span> </div> {% ENDIF %}{% ENDFOR %}{% ENDIF %}
Далее зайдите в main.css - найдите:
.product-view .product-shop .goodsDataMainModificationArtNumber, .product-view .product-shop .goodsDataMainModificationAvailable {margin: 0 0 7px 0;font-weight: 600;color: #22121e;} .product-view .product-shop .goodsDataMainModificationArtNumber span, .product-view .product-shop .goodsDataMainModificationAvailable span {display: inline-block;font-weight: normal;margin-left: 5px;text-shadow: none;}
перед ним вставьте:
.product-view .product-shop .min_quant{padding: 10px;background: #EFEFEC;margin-bottom: 10px;font-style:italic;} .product-view .product-shop .min_quant span{display: block;} .product-view .product-shop .min_quant span:nth-child(1){color:red;}
Далее зайдите в main.js - в самом конце пропишите:
$(function () { var id = 'Минимальное количество'; var quantity = $('[name="form[goods_mod_quantity]"]'); var pack = $('#content_2 tr').map(function () { if ($.trim($(this).find('.cell1').text()) === id) { return (parseInt($(this).closest('tr').find('.cell2').text())); } }).get(0); if (pack) { quantity.val(pack).keyup(function () { var current = parseInt($(this).val()); quantity.val(current > pack ? current : pack); }); } });
#10
Отправлено 20 Сентябрь 2017 - 21:31
Vaccina (20 Сентябрь 2017 - 08:17) писал:
Зайдите в раздел Сайт - Редактор шаблонов - Товар - найдите:
<!-- Артикул --> {% IF GOODS_MOD_ART_NUMBER %} <div class="goodsDataMainModificationArtNumber f-fix"> Артикул: <span>{GOODS_MOD_ART_NUMBER}</span> </div> {% ENDIF %}
перед ним вставьте:
<!-- Минимальное количество --> {% IFNOT goods_features_empty %}{% FOR goods_features %}{% IF goods_features.NAME=Минимальное количество %} <div class="min_quant"> <span>Этот товар продается по {goods_features.VALUE} штук.</span> <span>Цена указана за штуку</span> </div> {% ENDIF %}{% ENDFOR %}{% ENDIF %}
Далее зайдите в main.css - найдите:
.product-view .product-shop .goodsDataMainModificationArtNumber, .product-view .product-shop .goodsDataMainModificationAvailable {margin: 0 0 7px 0;font-weight: 600;color: #22121e;} .product-view .product-shop .goodsDataMainModificationArtNumber span, .product-view .product-shop .goodsDataMainModificationAvailable span {display: inline-block;font-weight: normal;margin-left: 5px;text-shadow: none;}
перед ним вставьте:
.product-view .product-shop .min_quant{padding: 10px;background: #EFEFEC;margin-bottom: 10px;font-style:italic;} .product-view .product-shop .min_quant span{display: block;} .product-view .product-shop .min_quant span:nth-child(1){color:red;}
Далее зайдите в main.js - в самом конце пропишите:
$(function () { var id = 'Минимальное количество'; var quantity = $('[name="form[goods_mod_quantity]"]'); var pack = $('#content_2 tr').map(function () { if ($.trim($(this).find('.cell1').text()) === id) { return (parseInt($(this).closest('tr').find('.cell2').text())); } }).get(0); if (pack) { quantity.val(pack).keyup(function () { var current = parseInt($(this).val()); quantity.val(current > pack ? current : pack); }); } });
Код вставила. Просто замечательно


Только есть один нюанс, который нужно подправить - если в товаре при выборе кол-во нажимать на "+" то следующие значения идут 5 6 7 8 ... а можно сделать, чтобы 5 10 15 20 и т.д.? удваивались. Ну и аналогично, если нажимать на "-"
#11
Отправлено 21 Сентябрь 2017 - 10:27
Ribka (20 Сентябрь 2017 - 21:31) писал:


Только есть один нюанс, который нужно подправить - если в товаре при выборе кол-во нажимать на "+" то следующие значения идут 5 6 7 8 ... а можно сделать, чтобы 5 10 15 20 и т.д.? удваивались. Ну и аналогично, если нажимать на "-"
{% IFNOT goods_features_empty %}{% FOR goods_features %}{% IF goods_features.NAME=Минимальное количество %} <div class="min_quant"> <span>Этот товар продается по {goods_features.VALUE} штук.</span> <span>Цена указана за штуку</span> </div> {% ENDIF %}{% ENDFOR %}{% ENDIF %}
после вставьте
{% IFNOT goods_features_empty %}{% FOR goods_features %}{% IF goods_features.NAME=Минимальное количество %} <div class="min_quant"> <span id="val_num" style="display:none">{goods_features.VALUE}</span> <span>Этот товар продается по {goods_features.VALUE} штук.</span> <span>Цена указана за штуку</span> </div> {% ENDIF %}{% ENDFOR %}{% ENDIF %}далее найдите в файле main.js код
//Regulator Up копки + в карточке товара при добавлении в корзину $('.qty-plus').click(function(){ var quantity = $(this).parent().find('.quantity'), currentVal = parseInt(quantity.val()); if (!isNaN(currentVal)){ quantity.val(currentVal + 1); quantity.trigger('keyup'); } return false; }); //Regulator Down копки - в карточке товара при добавлении в корзину $('.qty-minus').click(function(){ var quantity = $(this).parent().find('.quantity'), currentVal = parseInt(quantity.val()); if (!isNaN(currentVal) && !(currentVal <= 1) ){ quantity.val(currentVal - 1); quantity.trigger('keyup'); } return false; });замените на
//Regulator Up копки + в карточке товара при добавлении в корзину $('.qty-plus').click(function(){ var quantity = $(this).parent().find('.quantity'), currentVal = parseInt(quantity.val()); if ($('#val_num').length){ var numb=parseInt($('#val_num').text()); console.log(numb) } else{ var numb=1; } if (!isNaN(currentVal)){ quantity.val(currentVal + numb); quantity.trigger('keyup'); } return false; }); //Regulator Down копки - в карточке товара при добавлении в корзину $('.qty-minus').click(function(){ var quantity = $(this).parent().find('.quantity'), currentVal = parseInt(quantity.val()); if ($('#val_num').length){ var numb=parseInt($('#val_num').text()); console.log(numb) } else{ var numb=1; } if (!isNaN(currentVal) && !(currentVal <= numb) ){ quantity.val(currentVal - numb); quantity.trigger('keyup'); } return false; });
#12
Отправлено 21 Сентябрь 2017 - 21:49
Ирина345 (21 Сентябрь 2017 - 10:27) писал:
{% IFNOT goods_features_empty %}{% FOR goods_features %}{% IF goods_features.NAME=Минимальное количество %} <div class="min_quant"> <span>Этот товар продается по {goods_features.VALUE} штук.</span> <span>Цена указана за штуку</span> </div> {% ENDIF %}{% ENDFOR %}{% ENDIF %}
после вставьте
{% IFNOT goods_features_empty %}{% FOR goods_features %}{% IF goods_features.NAME=Минимальное количество %} <div class="min_quant"> <span id="val_num" style="display:none">{goods_features.VALUE}</span> <span>Этот товар продается по {goods_features.VALUE} штук.</span> <span>Цена указана за штуку</span> </div> {% ENDIF %}{% ENDFOR %}{% ENDIF %}далее найдите в файле main.js код
//Regulator Up копки + в карточке товара при добавлении в корзину $('.qty-plus').click(function(){ var quantity = $(this).parent().find('.quantity'), currentVal = parseInt(quantity.val()); if (!isNaN(currentVal)){ quantity.val(currentVal + 1); quantity.trigger('keyup'); } return false; }); //Regulator Down копки - в карточке товара при добавлении в корзину $('.qty-minus').click(function(){ var quantity = $(this).parent().find('.quantity'), currentVal = parseInt(quantity.val()); if (!isNaN(currentVal) && !(currentVal <= 1) ){ quantity.val(currentVal - 1); quantity.trigger('keyup'); } return false; });замените на
//Regulator Up копки + в карточке товара при добавлении в корзину $('.qty-plus').click(function(){ var quantity = $(this).parent().find('.quantity'), currentVal = parseInt(quantity.val()); if ($('#val_num').length){ var numb=parseInt($('#val_num').text()); console.log(numb) } else{ var numb=1; } if (!isNaN(currentVal)){ quantity.val(currentVal + numb); quantity.trigger('keyup'); } return false; }); //Regulator Down копки - в карточке товара при добавлении в корзину $('.qty-minus').click(function(){ var quantity = $(this).parent().find('.quantity'), currentVal = parseInt(quantity.val()); if ($('#val_num').length){ var numb=parseInt($('#val_num').text()); console.log(numb) } else{ var numb=1; } if (!isNaN(currentVal) && !(currentVal <= numb) ){ quantity.val(currentVal - numb); quantity.trigger('keyup'); } return false; });
Код вставила. Подсчет кол-ва идет верно! Спасибо!
а для чего вы попросили вставить еще один код, практически аналогичный? https://prnt.sc/go1c16 все задвоилось. Или нужно было заменить может?
И еще один важный момент я упустила. Можно ли прописать аналогичные условия к таким товарам только в корзине? Сейчас можно добавлять по 5 6 7 8 https://prnt.sc/go1eqn
#13
Отправлено 22 Сентябрь 2017 - 07:38
Скорее всего, речь шла о замене кода. Заметила, что сбросился стиль с текста, зайдите в main.css - найдите:
.product-view .product-shop .min_quant span:nth-child(1){color:red;}
замените на:
.product-view .product-shop .min_quant span:nth-child(2){color:red;}
На счет второго вопроса, у корзины поле используется иначе и иконки для увеличения\уменьшения количества стандартные от браузера, необходимо в этом случае установить кнопки как в карточке товара, вас устроит данный вариант?
#14
Отправлено 22 Сентябрь 2017 - 20:48
Vaccina (22 Сентябрь 2017 - 07:38) писал:
Скорее всего, речь шла о замене кода. Заметила, что сбросился стиль с текста, зайдите в main.css - найдите:
.product-view .product-shop .min_quant span:nth-child(1){color:red;}
замените на:
.product-view .product-shop .min_quant span:nth-child(2){color:red;}
На счет второго вопроса, у корзины поле используется иначе и иконки для увеличения\уменьшения количества стандартные от браузера, необходимо в этом случае установить кнопки как в карточке товара, вас устроит данный вариант?
Да, было бы здорово))
#15
Отправлено 23 Сентябрь 2017 - 03:37
Зайдите в раздел Сайт - Редактор шаблонов - Корзина - найдите:
<td width="100" class="cart-qty"> <span class="title">Кол-во:</span> <input name="form[quantity][{cart_items.GOODS_MOD_ID}]" value="{cart_items.ORDER_LINE_QUANTITY}" title="Количество, {cart_items.GOODS_MOD_MEASURE_NAME}" class="inputText cartqty" type="number" maxlength="5" min="1" onkeypress="return keyPress('0123456789')" /> </td>
замените на:
<td width="150" class="cart-qty"> <div class="wrap-qty"> <span class="title">Кол-во:</span> <div class="qty-set"> <span class="qty-minus fa fa-minus unselectable" title="Уменьшить"></span> <input name="form[quantity][{cart_items.GOODS_MOD_ID}]" value="{cart_items.ORDER_LINE_QUANTITY}" title="Количество, {cart_items.GOODS_MOD_MEASURE_NAME}" class="inputText cartqty quantity" type="text" maxlength="5" min="1" onkeypress="return keyPress('0123456789')" /> <span class="qty-plus fa fa-plus unselectable" title="Увеличить"></span> </div> </div> <!-- Минимальное количество --> {% FOR goods_attr_list %}{% IF cart_items.goods_attr_list.NAME=Минимальное количество %} <div class="min_quant"> <span id="val_num" style="display:none">{cart_items.goods_attr_list.VALUE}</span></div> {% ENDIF %}{% ENDFOR %} </td>
Далее зайдите в main.css - найдите:
.product-view .product-shop .add-to-box .wrap-qty {display: inline-block;float: left;margin: 0 20px 0px 0;} .product-view .product-shop .add-to-box .wrap-qty .qty-title {display: none;font-weight: bold;margin-right: 20px;} .product-view .product-shop .add-to-box .wrap-qty .qty-set {display: inline-block;outline: 1px solid #e5e5e5;} .product-view .product-shop .add-to-box .wrap-qty .qty-set span {display: inline-block;float: left;text-align: center;border: 0;width: 30px;height: 40px;line-height: 40px;background-color: #fff;} .product-view .product-shop .add-to-box .wrap-qty .qty-set span:hover {color: #8C2C29;cursor: pointer;} .product-view .product-shop .add-to-box .wrap-qty .qty-set .quantity {display: inline-block;float: left;background-color: #fff;text-align: center;max-width: 50px;height: 40px;padding: 0px;border: 0;font-size: 18px;}
замените на:
.wrap-qty {display: inline-block;float: left;margin: 0 20px 0px 0;} .cart-qty .wrap-qty {margin: 0 auto;float: none;} .wrap-qty .qty-title {display: none;font-weight: bold;margin-right: 20px;} .wrap-qty .qty-set {display: inline-block;outline: 1px solid #e5e5e5;} .wrap-qty .qty-set span {display: inline-block;float: left;text-align: center;border: 0;width: 30px;height: 40px;line-height: 40px;background-color: #fff;} .wrap-qty .qty-set span:hover {color: #8C2C29;cursor: pointer;} .wrap-qty .qty-set .quantity {display: inline-block;float: left;background-color: #fff;text-align: center;max-width: 50px;height: 40px;padding: 0px;border: 0;font-size: 18px;}
далее найдите:
.cartTable .inputText {text-align: center;padding: 0px;min-width: 60px;}
замените на:
.cartTable .inputText {text-align: center;padding: 0px;min-width: 60px;width: 60px;float: left;}
Далее зайдите в main.js - найдите и удалите:
//Regulator Up копки + в карточке товара при добавлении в корзину $('.qty-plus').click(function(){ var quantity = $(this).parent().find('.quantity'), currentVal = parseInt(quantity.val()); if ($('#val_num').length){ var numb=parseInt($('#val_num').text()); console.log(numb) } else{ var numb=1; } if (!isNaN(currentVal)){ quantity.val(currentVal + numb); quantity.trigger('keyup'); } return false; }); //Regulator Down копки - в карточке товара при добавлении в корзину $('.qty-minus').click(function(){ var quantity = $(this).parent().find('.quantity'), currentVal = parseInt(quantity.val()); if ($('#val_num').length){ var numb=parseInt($('#val_num').text()); console.log(numb) } else{ var numb=1; } if (!isNaN(currentVal) && !(currentVal <= numb) ){ quantity.val(currentVal - numb); quantity.trigger('keyup'); } return false; }); // Если вводят 0 то заменяем на 1 $('.wrap-qty .quantity').change(function(){ if($(this).val() < 1){ $(this).val(1); } }); далее найдите: $(function () { var id = 'Минимальное количество'; var quantity = $('[name="form[goods_mod_quantity]"]'); var pack = $('#content_2 tr').map(function () { if ($.trim($(this).find('.cell1').text()) === id) { return (parseInt($(this).closest('tr').find('.cell2').text())); } }).get(0); if (pack) { quantity.val(pack).keyup(function () { var current = parseInt($(this).val()); quantity.val(current > pack ? current : pack); }); } });
далее найдите:
$(function () { var id = 'Минимальное количество'; var quantity = $('[name="form[goods_mod_quantity]"]'); var pack = $('#content_2 tr').map(function () { if ($.trim($(this).find('.cell1').text()) === id) { return (parseInt($(this).closest('tr').find('.cell2').text())); } }).get(0); if (pack) { quantity.val(pack).keyup(function () { var current = parseInt($(this).val()); quantity.val(current > pack ? current : pack); }); } });
замените на:
$(function () { //Regulator Up копки + в карточке товара при добавлении в корзину $('.qty-plus').click(function(){ var quantity = $(this).parent().find('.quantity'), currentVal = parseInt(quantity.val()); if ($('#val_num').length){ var numb=parseInt($('#val_num').text()); } else{ var numb=1; } if (!isNaN(currentVal)){ quantity.val(currentVal + numb); quantity.trigger('keyup'); } return false; }); //Regulator Down копки - в карточке товара при добавлении в корзину $('.qty-minus').click(function(){ var quantity = $(this).parent().find('.quantity'), currentVal = parseInt(quantity.val()); if ($('#val_num').length){ var numb=parseInt($('#val_num').text()); } else{ var numb=1; } if (!isNaN(currentVal) && !(currentVal <= numb) ){ quantity.val(currentVal - numb); quantity.trigger('keyup'); } return false; }); // Если вводят 0 то заменяем на 1 $('.wrap-qty .quantity').change(function(){ if($(this).val() < 1){ $(this).val(1); } }); var id = 'Минимальное количество'; var quantity = $('[name="form[goods_mod_quantity]"]'); var pack = $('#content_2 tr').map(function () { if ($.trim($(this).find('.cell1').text()) === id) { return (parseInt($(this).closest('tr').find('.cell2').text())); } }).get(0); if (pack) { quantity.val(pack).keyup(function () { var current = parseInt($(this).val()); quantity.val(current > pack ? current : pack); }); } });

#16
Отправлено 23 Сентябрь 2017 - 11:24
Vaccina (23 Сентябрь 2017 - 03:37) писал:
Зайдите в раздел Сайт - Редактор шаблонов - Корзина - найдите:
<td width="100" class="cart-qty"> <span class="title">Кол-во:</span> <input name="form[quantity][{cart_items.GOODS_MOD_ID}]" value="{cart_items.ORDER_LINE_QUANTITY}" title="Количество, {cart_items.GOODS_MOD_MEASURE_NAME}" class="inputText cartqty" type="number" maxlength="5" min="1" onkeypress="return keyPress('0123456789')" /> </td>
замените на:
<td width="150" class="cart-qty"> <div class="wrap-qty"> <span class="title">Кол-во:</span> <div class="qty-set"> <span class="qty-minus fa fa-minus unselectable" title="Уменьшить"></span> <input name="form[quantity][{cart_items.GOODS_MOD_ID}]" value="{cart_items.ORDER_LINE_QUANTITY}" title="Количество, {cart_items.GOODS_MOD_MEASURE_NAME}" class="inputText cartqty quantity" type="text" maxlength="5" min="1" onkeypress="return keyPress('0123456789')" /> <span class="qty-plus fa fa-plus unselectable" title="Увеличить"></span> </div> </div> <!-- Минимальное количество --> {% FOR goods_attr_list %}{% IF cart_items.goods_attr_list.NAME=Минимальное количество %} <div class="min_quant"> <span id="val_num" style="display:none">{cart_items.goods_attr_list.VALUE}</span></div> {% ENDIF %}{% ENDFOR %} </td>
Далее зайдите в main.css - найдите:
.product-view .product-shop .add-to-box .wrap-qty {display: inline-block;float: left;margin: 0 20px 0px 0;} .product-view .product-shop .add-to-box .wrap-qty .qty-title {display: none;font-weight: bold;margin-right: 20px;} .product-view .product-shop .add-to-box .wrap-qty .qty-set {display: inline-block;outline: 1px solid #e5e5e5;} .product-view .product-shop .add-to-box .wrap-qty .qty-set span {display: inline-block;float: left;text-align: center;border: 0;width: 30px;height: 40px;line-height: 40px;background-color: #fff;} .product-view .product-shop .add-to-box .wrap-qty .qty-set span:hover {color: #8C2C29;cursor: pointer;} .product-view .product-shop .add-to-box .wrap-qty .qty-set .quantity {display: inline-block;float: left;background-color: #fff;text-align: center;max-width: 50px;height: 40px;padding: 0px;border: 0;font-size: 18px;}
замените на:
.wrap-qty {display: inline-block;float: left;margin: 0 20px 0px 0;} .cart-qty .wrap-qty {margin: 0 auto;float: none;} .wrap-qty .qty-title {display: none;font-weight: bold;margin-right: 20px;} .wrap-qty .qty-set {display: inline-block;outline: 1px solid #e5e5e5;} .wrap-qty .qty-set span {display: inline-block;float: left;text-align: center;border: 0;width: 30px;height: 40px;line-height: 40px;background-color: #fff;} .wrap-qty .qty-set span:hover {color: #8C2C29;cursor: pointer;} .wrap-qty .qty-set .quantity {display: inline-block;float: left;background-color: #fff;text-align: center;max-width: 50px;height: 40px;padding: 0px;border: 0;font-size: 18px;}
далее найдите:
.cartTable .inputText {text-align: center;padding: 0px;min-width: 60px;}
замените на:
.cartTable .inputText {text-align: center;padding: 0px;min-width: 60px;width: 60px;float: left;}
Далее зайдите в main.js - найдите и удалите:
//Regulator Up копки + в карточке товара при добавлении в корзину $('.qty-plus').click(function(){ var quantity = $(this).parent().find('.quantity'), currentVal = parseInt(quantity.val()); if ($('#val_num').length){ var numb=parseInt($('#val_num').text()); console.log(numb) } else{ var numb=1; } if (!isNaN(currentVal)){ quantity.val(currentVal + numb); quantity.trigger('keyup'); } return false; }); //Regulator Down копки - в карточке товара при добавлении в корзину $('.qty-minus').click(function(){ var quantity = $(this).parent().find('.quantity'), currentVal = parseInt(quantity.val()); if ($('#val_num').length){ var numb=parseInt($('#val_num').text()); console.log(numb) } else{ var numb=1; } if (!isNaN(currentVal) && !(currentVal <= numb) ){ quantity.val(currentVal - numb); quantity.trigger('keyup'); } return false; }); // Если вводят 0 то заменяем на 1 $('.wrap-qty .quantity').change(function(){ if($(this).val() < 1){ $(this).val(1); } }); далее найдите: $(function () { var id = 'Минимальное количество'; var quantity = $('[name="form[goods_mod_quantity]"]'); var pack = $('#content_2 tr').map(function () { if ($.trim($(this).find('.cell1').text()) === id) { return (parseInt($(this).closest('tr').find('.cell2').text())); } }).get(0); if (pack) { quantity.val(pack).keyup(function () { var current = parseInt($(this).val()); quantity.val(current > pack ? current : pack); }); } });
далее найдите:
$(function () { var id = 'Минимальное количество'; var quantity = $('[name="form[goods_mod_quantity]"]'); var pack = $('#content_2 tr').map(function () { if ($.trim($(this).find('.cell1').text()) === id) { return (parseInt($(this).closest('tr').find('.cell2').text())); } }).get(0); if (pack) { quantity.val(pack).keyup(function () { var current = parseInt($(this).val()); quantity.val(current > pack ? current : pack); }); } });
замените на:
$(function () { //Regulator Up копки + в карточке товара при добавлении в корзину $('.qty-plus').click(function(){ var quantity = $(this).parent().find('.quantity'), currentVal = parseInt(quantity.val()); if ($('#val_num').length){ var numb=parseInt($('#val_num').text()); } else{ var numb=1; } if (!isNaN(currentVal)){ quantity.val(currentVal + numb); quantity.trigger('keyup'); } return false; }); //Regulator Down копки - в карточке товара при добавлении в корзину $('.qty-minus').click(function(){ var quantity = $(this).parent().find('.quantity'), currentVal = parseInt(quantity.val()); if ($('#val_num').length){ var numb=parseInt($('#val_num').text()); } else{ var numb=1; } if (!isNaN(currentVal) && !(currentVal <= numb) ){ quantity.val(currentVal - numb); quantity.trigger('keyup'); } return false; }); // Если вводят 0 то заменяем на 1 $('.wrap-qty .quantity').change(function(){ if($(this).val() < 1){ $(this).val(1); } }); var id = 'Минимальное количество'; var quantity = $('[name="form[goods_mod_quantity]"]'); var pack = $('#content_2 tr').map(function () { if ($.trim($(this).find('.cell1').text()) === id) { return (parseInt($(this).closest('tr').find('.cell2').text())); } }).get(0); if (pack) { quantity.val(pack).keyup(function () { var current = parseInt($(this).val()); quantity.val(current > pack ? current : pack); }); } });

Все получилось))
1. Работает и в карточке, и в корзине корректно, исключение только вот https://prnt.sc/gonbmx может я ошиблась где-то когда меняла кода?(
2. Когда добавляю товар через каталог кнопка "Добавить в корзину" то добавляется по 1 шт.
Сделать аналогичное добавление кол-ва в корзину при условии "минимального количества" + прописать это текстом. скрин https://prnt.sc/gongha
3. В корзине прописать условия для таких товаров текстом https://prnt.sc/gongzw
4. А еще знаете какую неточность заметила. Можно вручную редактировать кол-во в карточке товара и в корзине ( у которых прописано условие Минимальное кол-во) и оно удваивается потом некорректно https://prnt.sc/gonhpo
Запретить редактировать кол-во в ручную. Сделать неактивным поле где идет кол-во. Редактирование кол-ва в корзине и в товаре только через кнопки + -
#17
Отправлено 06 Октябрь 2017 - 06:03
1, 3-4. Зайдите в раздел Сайт - Редактор шаблонов - main.css - найдите:
.wrap-qty .qty-set .quantity {display: inline-block;float: left;background-color: #fff;text-align: center;max-width: 50px;height: 40px;padding: 0px;border: 0;font-size: 18px;}
замените на:
.wrap-qty .qty-set .quantity {display: inline-block;float: left;background-color: #fff;text-align: center;min-width: 50px;height: 40px;padding: 0px;border: 0;font-size: 18px;width: 50px;}
Далее зайдите в шаблон Корзина - найдите:
<td class="name"> <a href="{cart_items.GOODS_URL}">{cart_items.GOODS_NAME}</a> <!-- Если у товара есть отличительные свойства для модификации товара, допишем их к названию товара --> {% IF cart_items.GOODS_MOD_ART_NUMBER %}<div class="art">Артикул: <span>{cart_items.GOODS_MOD_ART_NUMBER}</span></div>{% ENDIF %} {% IFNOT cart_items.distinctive_properties_empty %}<div class="properties">({% FOR distinctive_properties %}{cart_items.distinctive_properties.NAME}: {cart_items.distinctive_properties.VALUE}{% IFNOT cart_items.distinctive_properties.last %}, {% ENDIF %}{% ENDFOR %})</div>{% ENDIF %} </td> <td width="150" class="cart-price"> <span class="title">Цена за {cart_items.GOODS_MOD_MEASURE_NAME}.:</span> <span class="price">{cart_items.GOODS_MOD_PRICE_NOW | money_format}</span> </td> <td width="150" class="cart-qty"> <div class="wrap-qty"> <span class="title">Кол-во:</span> <div class="qty-set"> <span class="qty-minus fa fa-minus unselectable" title="Уменьшить"></span> <input name="form[quantity][{cart_items.GOODS_MOD_ID}]" value="{cart_items.ORDER_LINE_QUANTITY}" title="Количество, {cart_items.GOODS_MOD_MEASURE_NAME}" class="inputText cartqty quantity" type="text" maxlength="5" min="1" onkeypress="return keyPress('0123456789')" /> <span class="qty-plus fa fa-plus unselectable" title="Увеличить"></span> </div> </div> <!-- Минимальное количество --> {% FOR goods_attr_list %}{% IF cart_items.goods_attr_list.NAME=Минимальное количество %} <div class="min_quant"> <span id="val_num" style="display:none">{cart_items.goods_attr_list.VALUE}</span></div> {% ENDIF %}{% ENDFOR %} </td>
замените на:
<td class="name"> <a href="{cart_items.GOODS_URL}">{cart_items.GOODS_NAME}</a> <!-- Если у товара есть отличительные свойства для модификации товара, допишем их к названию товара --> {% IF cart_items.GOODS_MOD_ART_NUMBER %}<div class="art">Артикул: <span>{cart_items.GOODS_MOD_ART_NUMBER}</span></div>{% ENDIF %} {% IFNOT cart_items.distinctive_properties_empty %}<div class="properties">({% FOR distinctive_properties %}{cart_items.distinctive_properties.NAME}: {cart_items.distinctive_properties.VALUE}{% IFNOT cart_items.distinctive_properties.last %}, {% ENDIF %}{% ENDFOR %})</div>{% ENDIF %} <!-- Минимальное количество --> {% FOR goods_attr_list %}{% IF cart_items.goods_attr_list.NAME=Минимальное количество %} <div class="min_quant"> <span id="val_num" style="display:none">{cart_items.goods_attr_list.VALUE}</span> <span>Этот товар продается по {cart_items.goods_attr_list.VALUE} штук.</span> <span>Цена указана за штуку</span> </div> {% ENDIF %}{% ENDFOR %} </td> <td width="150" class="cart-price"> <span class="title">Цена за {cart_items.GOODS_MOD_MEASURE_NAME}.:</span> <span class="price">{cart_items.GOODS_MOD_PRICE_NOW | money_format}</span> </td> <td width="150" class="cart-qty"> <div class="wrap-qty"> <span class="title">Кол-во:</span> <div class="qty-set"> <span class="qty-minus fa fa-minus unselectable" title="Уменьшить"></span> <input name="form[quantity][{cart_items.GOODS_MOD_ID}]" value="{cart_items.ORDER_LINE_QUANTITY}" title="Количество, {cart_items.GOODS_MOD_MEASURE_NAME}" class="inputText cartqty quantity" type="text" maxlength="5" min="1" readonly="true" /> <span class="qty-plus fa fa-plus unselectable" title="Увеличить"></span> </div> </div> </td>

2. Зайдите в раздел Сайт - Редактор шаблонов - Товары - найдите:
<form action="{CART_ADD_GOODS_MODIFICATION_URL | url_amp}" method="post" class="product-form-{goods.MIN_PRICE_NOW_ID} goodsListForm"> <input type="hidden" name="hash" value="{HASH}" /> <input type="hidden" name="form[goods_from]" value="{goods.GOODS_FROM}" /> <input type="hidden" name="form[goods_mod_id]" value="{goods.MIN_PRICE_NOW_ID}" />
после него пропишите:
{% IFNOT goods.goods_attr_list_empty %}{% FOR goods_attr_list %}{% IF goods.goods_attr_list.NAME = Минимальное количество %} <input type="hidden" name="form[goods_mod_quantity]" value="{goods.goods_attr_list.VALUE}" /> {% ENDIF %}{% ENDFOR %}{% ENDIF %}
далее зайдите в шаблон Ajax добавление товара в корзину - найдите:
<div class="cart-product-quantity"> <strong>Количество:</strong> <span class="tc">{cart_items.ORDER_LINE_QUANTITY}</span> </div>
перед ним вставьте:
<!-- Минимальное количество --> {% FOR goods_attr_list %}{% IF cart_items.goods_attr_list.NAME=Минимальное количество %} <div class="min_quant"> <span id="val_num" style="display:none">{cart_items.goods_attr_list.VALUE}</span> <span>Этот товар продается по {cart_items.goods_attr_list.VALUE} штук.</span> <span>Цена указана за штуку</span> </div> {% ENDIF %}{% ENDFOR %}
Далее зайдите в main.css - найдите:
.cart-ajax .cart-product .cart-product-info .product-name {display: block;overflow: hidden;white-space: normal;text-overflow: ellipsis;margin: 3px 0 5px 0;max-height: 100px;}
перед ним пропишите:
.cart-ajax .cart-product .cart-product-info{padding-left: 170px;}

#18
Отправлено 06 Октябрь 2017 - 22:03
Vaccina (06 Октябрь 2017 - 06:03) писал:
1, 3-4. Зайдите в раздел Сайт - Редактор шаблонов - main.css - найдите:
.wrap-qty .qty-set .quantity {display: inline-block;float: left;background-color: #fff;text-align: center;max-width: 50px;height: 40px;padding: 0px;border: 0;font-size: 18px;}
замените на:
.wrap-qty .qty-set .quantity {display: inline-block;float: left;background-color: #fff;text-align: center;min-width: 50px;height: 40px;padding: 0px;border: 0;font-size: 18px;width: 50px;}
Далее зайдите в шаблон Корзина - найдите:
<td class="name"> <a href="{cart_items.GOODS_URL}">{cart_items.GOODS_NAME}</a> <!-- Если у товара есть отличительные свойства для модификации товара, допишем их к названию товара --> {% IF cart_items.GOODS_MOD_ART_NUMBER %}<div class="art">Артикул: <span>{cart_items.GOODS_MOD_ART_NUMBER}</span></div>{% ENDIF %} {% IFNOT cart_items.distinctive_properties_empty %}<div class="properties">({% FOR distinctive_properties %}{cart_items.distinctive_properties.NAME}: {cart_items.distinctive_properties.VALUE}{% IFNOT cart_items.distinctive_properties.last %}, {% ENDIF %}{% ENDFOR %})</div>{% ENDIF %} </td> <td width="150" class="cart-price"> <span class="title">Цена за {cart_items.GOODS_MOD_MEASURE_NAME}.:</span> <span class="price">{cart_items.GOODS_MOD_PRICE_NOW | money_format}</span> </td> <td width="150" class="cart-qty"> <div class="wrap-qty"> <span class="title">Кол-во:</span> <div class="qty-set"> <span class="qty-minus fa fa-minus unselectable" title="Уменьшить"></span> <input name="form[quantity][{cart_items.GOODS_MOD_ID}]" value="{cart_items.ORDER_LINE_QUANTITY}" title="Количество, {cart_items.GOODS_MOD_MEASURE_NAME}" class="inputText cartqty quantity" type="text" maxlength="5" min="1" onkeypress="return keyPress('0123456789')" /> <span class="qty-plus fa fa-plus unselectable" title="Увеличить"></span> </div> </div> <!-- Минимальное количество --> {% FOR goods_attr_list %}{% IF cart_items.goods_attr_list.NAME=Минимальное количество %} <div class="min_quant"> <span id="val_num" style="display:none">{cart_items.goods_attr_list.VALUE}</span></div> {% ENDIF %}{% ENDFOR %} </td>
замените на:
<td class="name"> <a href="{cart_items.GOODS_URL}">{cart_items.GOODS_NAME}</a> <!-- Если у товара есть отличительные свойства для модификации товара, допишем их к названию товара --> {% IF cart_items.GOODS_MOD_ART_NUMBER %}<div class="art">Артикул: <span>{cart_items.GOODS_MOD_ART_NUMBER}</span></div>{% ENDIF %} {% IFNOT cart_items.distinctive_properties_empty %}<div class="properties">({% FOR distinctive_properties %}{cart_items.distinctive_properties.NAME}: {cart_items.distinctive_properties.VALUE}{% IFNOT cart_items.distinctive_properties.last %}, {% ENDIF %}{% ENDFOR %})</div>{% ENDIF %} <!-- Минимальное количество --> {% FOR goods_attr_list %}{% IF cart_items.goods_attr_list.NAME=Минимальное количество %} <div class="min_quant"> <span id="val_num" style="display:none">{cart_items.goods_attr_list.VALUE}</span> <span>Этот товар продается по {cart_items.goods_attr_list.VALUE} штук.</span> <span>Цена указана за штуку</span> </div> {% ENDIF %}{% ENDFOR %} </td> <td width="150" class="cart-price"> <span class="title">Цена за {cart_items.GOODS_MOD_MEASURE_NAME}.:</span> <span class="price">{cart_items.GOODS_MOD_PRICE_NOW | money_format}</span> </td> <td width="150" class="cart-qty"> <div class="wrap-qty"> <span class="title">Кол-во:</span> <div class="qty-set"> <span class="qty-minus fa fa-minus unselectable" title="Уменьшить"></span> <input name="form[quantity][{cart_items.GOODS_MOD_ID}]" value="{cart_items.ORDER_LINE_QUANTITY}" title="Количество, {cart_items.GOODS_MOD_MEASURE_NAME}" class="inputText cartqty quantity" type="text" maxlength="5" min="1" readonly="true" /> <span class="qty-plus fa fa-plus unselectable" title="Увеличить"></span> </div> </div> </td>

2. Зайдите в раздел Сайт - Редактор шаблонов - Товары - найдите:
<form action="{CART_ADD_GOODS_MODIFICATION_URL | url_amp}" method="post" class="product-form-{goods.MIN_PRICE_NOW_ID} goodsListForm"> <input type="hidden" name="hash" value="{HASH}" /> <input type="hidden" name="form[goods_from]" value="{goods.GOODS_FROM}" /> <input type="hidden" name="form[goods_mod_id]" value="{goods.MIN_PRICE_NOW_ID}" />
после него пропишите:
{% IFNOT goods.goods_attr_list_empty %}{% FOR goods_attr_list %}{% IF goods.goods_attr_list.NAME = Минимальное количество %} <input type="hidden" name="form[goods_mod_quantity]" value="{goods.goods_attr_list.VALUE}" /> {% ENDIF %}{% ENDFOR %}{% ENDIF %}
далее зайдите в шаблон Ajax добавление товара в корзину - найдите:
<div class="cart-product-quantity"> <strong>Количество:</strong> <span class="tc">{cart_items.ORDER_LINE_QUANTITY}</span> </div>
перед ним вставьте:
<!-- Минимальное количество --> {% FOR goods_attr_list %}{% IF cart_items.goods_attr_list.NAME=Минимальное количество %} <div class="min_quant"> <span id="val_num" style="display:none">{cart_items.goods_attr_list.VALUE}</span> <span>Этот товар продается по {cart_items.goods_attr_list.VALUE} штук.</span> <span>Цена указана за штуку</span> </div> {% ENDIF %}{% ENDFOR %}
Далее зайдите в main.css - найдите:
.cart-ajax .cart-product .cart-product-info .product-name {display: block;overflow: hidden;white-space: normal;text-overflow: ellipsis;margin: 3px 0 5px 0;max-height: 100px;}
перед ним пропишите:
.cart-ajax .cart-product .cart-product-info{padding-left: 170px;}

Все супер, именно то, что я хотела

1. а можно тут https://prnt.sc/gu5s3n сделать шрифт в 2 раза меньше?
2. в корзине нельзя вручную редактировать кол-во, только через + -, а вот в карточке товара можно((( можно исправить,чтобы и в карточке товара нельзя было редактировать вручную цифры?
#19
Отправлено 10 Октябрь 2017 - 10:50
Ribka (06 Октябрь 2017 - 22:03) писал:

1. а можно тут https://prnt.sc/gu5s3n сделать шрифт в 2 раза меньше?
2. в корзине нельзя вручную редактировать кол-во, только через + -, а вот в карточке товара можно((( можно исправить,чтобы и в карточке товара нельзя было редактировать вручную цифры?
1) В файле main.css найдите код
.min_quant{padding: 10px;background: #EFEFEC;margin-bottom: 10px;font-style:italic;и замените его на
.min_quant{padding: 10px;background: #EFEFEC;margin-bottom: 10px;font-style:italic;font-size: 12px;}
2) В шаблоне Товар найдите код
<input type="text" name="form[goods_mod_quantity]" maxlength="4" value="1" min="1" title="Количество" class="inputText quantity" onkeypress="return keyPress('0123456789')">и замените его на
<input type="text" name="form[goods_mod_quantity]" maxlength="4" value="1" min="1" title="Количество" class="inputText quantity" onkeypress="return keyPress('0123456789')" readonly="true">
#20
Отправлено 10 Октябрь 2017 - 21:35
Stasya (10 Октябрь 2017 - 10:50) писал:
1) В файле main.css найдите код
.min_quant{padding: 10px;background: #EFEFEC;margin-bottom: 10px;font-style:italic;и замените его на
.min_quant{padding: 10px;background: #EFEFEC;margin-bottom: 10px;font-style:italic;font-size: 12px;}
2) В шаблоне Товар найдите код
<input type="text" name="form[goods_mod_quantity]" maxlength="4" value="1" min="1" title="Количество" class="inputText quantity" onkeypress="return keyPress('0123456789')">и замените его на
<input type="text" name="form[goods_mod_quantity]" maxlength="4" value="1" min="1" title="Количество" class="inputText quantity" onkeypress="return keyPress('0123456789')" readonly="true">
Просто супер. Спасибо вам огромное

Количество пользователей, читающих эту тему: 0
0 пользователей, 0 гостей, 0 анонимных