Как сделать, чтобы кол-во товаров на иконке корзины изменялось

голоса: 0

Добрый день, подскажите пожалуйста как добавить отображение кол-ва товаров, добавленных в корзину, на самой иконке "корзина"

И сделать так, чтобы при  добавлении товаров эта цифра менялась в зависимости от кол-ва едениц товаров в корзине. 

 

Адрес сайта http://textmir.ru/
Закрыто с пометкой: Вопрос решен!
| Автор: | Категория: Интернет-магазин
Закрыт | | Автор: Yuri_Geruk

Ответов: 1

голоса: 0

Перейдите в шаблон корзины - http://textmir.ru/panel/?a=tmpl;m=20;t=11 где отредактируйте ее вид, за количество товаров отвечает оператор $ORDER_NUM$

| Автор:

Вот код корзины

<div class="header-cart">
 <div class="block-content">
     
 <?if($BODY$)?><div class="summary">$NUM_ENTRIES$</div><?endif?>
 
 <div class="cart-content">
 <div class="subtotal">
 <?if($ORDER_NUM$)?>
 <div class="total">Итого: <span class="price">$ORDER_AMOUNT$</span></div>
 <?if($ORDER_DISCOUNT$)?>
 <div class="disc"> Скидка: <span class="price-disc">$ORDER_DISCOUNT$</span></div>
 <?if($DISCOUNT_INFO$)?>
 <div class="disc-info"> $DISCOUNT_INFO$ </div>
 <?endif?>
 </div>
 <?if($BODY$)?><ul>$BODY$</ul><?endif?>

 <?endif?>
 <div class="actions">
 <a class="basketclear" href="javascript://" rel="nofollow" onclick="return clearBasket();">Очистить</a>
 <a class="basketorder" href="/shop/checkout">Оформить заказ</a>
 </div>
 <?else?>
 <div>Ваша корзина пуста</div>
 </div>
 <?endif?>
 </div>
 
 </div>
 <?if($ORDER_NUM$)?> <?else?> <div class="empty">0</div><?endif?>
</div>

<script language="Javascript"><!--
var lock_buttons = 0;

function clearBasket(){
 if(lock_buttons) return false; else lock_buttons = 1;
 var el = $('#shop-basket');
 if(el.length){ var g=document.createElement("div"); $(g).addClass('myWinGrid').attr("id",'shop-basket-fade').css({"left":"0","top":"0","position":"absolute","border":"#CCCCCC 1px solid","width":$(el).width()+'px',"height":$(el).height()+'px',"z-index":5}).hide().bind('mousedown',function(e){e.stopPropagation();e.preventDefault();_uWnd.globalmousedown();}).html('<div class="myWinLoad" style="margin:5px;"></div>'); $(el).append(g); $(g).show(); }
 _uPostForm('',{type:'POST',url:'/shop/basket',data:{'mode':'clear'}});
 ga_event('basket_clear');
 return false;
}

function removeBasket(id){
 if(lock_buttons) return false; else lock_buttons = 1;
 $('#basket-item .with-clear-'+id+' .sb-func').removeClass('remove').addClass('myWinLoadS').attr('title','');
 _uPostForm('',{type:'POST',url:'/shop/basket',data:{'mode':'del', 'id':id}});
 return false;
}

function add2Basket(id,pref){
 if(lock_buttons) return false; else lock_buttons = 1;
 var opt = new Array();
 $('#b'+pref+'-'+id+'-basket').attr('disabled','disabled');
 $('#'+pref+'-'+id+'-basket').removeClass('done').removeClass('err').removeClass('add').addClass('wait').attr('title','');
 $('#'+pref+'-'+id+'-options-selectors').find('input:checked, select').each(function(){ opt.push(this.id.split('-')[3]+(parseInt(this.value) ? '-'+this.value :''));});
 _uPostForm('',{type:'POST',url:'/shop/basket',data:{'mode':'add', 'id':id, 'pref':pref, 'opt':opt.join(':'), 'cnt':$('#q'+pref+'-'+id+'-basket').attr('value')}});
 ga_event('basket_add');
 return false;
}

function buyNow(id,pref){
 if(lock_buttons) return false; else lock_buttons = 1;
 var opt = new Array();
 $('#b'+pref+'-'+id+'-buynow').attr('disabled','disabled');
 $('#'+pref+'-'+id+'-buynow').removeClass('done').removeClass('err').removeClass('now').addClass('wait').attr('title','');
 $('#'+pref+'-'+id+'-options-selectors').find('input:checked, select').each(function(){ opt.push(this.id.split('-')[3]+(parseInt(this.value) ? '-'+this.value :''));});
 _uPostForm('',{type:'POST',url:'/shop/basket',data:{'mode':'add', 'id':id, 'pref':pref, 'opt':opt.join(':'), 'cnt':$('#q'+pref+'-'+id+'-basket').attr('value'), 'now':1}});
 ga_event('basket_buynow')
 return false;
}
jQuery('#shop-basket a').on('click touchend', function(e) {
 var el = jQuery(this);
 var link = el.attr('href');
 window.location = link;
});
//--></script>

 

Видно, что прописано

</div>
 <?if($ORDER_NUM$)?> <?else?> <div class="empty">0</div><?endif?>
</div>

Но при добавлении товара в корзину он не выводит суммарное кол-ва товара в корзине (

 

Артём Череповский,

Замените ниже код:

 <?if($ORDER_NUM$)?> <?else?> <div class="empty">0</div><?endif?>

на:

<?if($ORDER_NUM$)?><div class="empty">$ORDER_NUM$</div> <?else?> <div class="empty">0</div><?endif?>

после должно работать и отображать количество.

Yuri_Geruk,
Всё сработало, спасибо большое!
...