Идём в Основной макет сайта, во вкладку Javascript, находим фрагмент кода добавления товара в корзину:
// Функции без создания коллекции
$.extend({
...
bootstrapAddIntoCart: function(path, shop_item_id, count){
...
});
Возможно, у вас используется другая функция добавления товара в корзину:
// Функции без создания коллекции
$.extend({
...
AddIntoCart: function(path, shop_item_id, count){
...
});
Добавляем в эту функцию (которая у вас используется), перед закрывающей фигурной скобкой, следующий код:
$('#incart_'+ shop_item_id).removeClass('hidden');
$('#cart_'+ shop_item_id).addClass('hidden');
return false;
Далее находим фрагмент кода:
// Функции без создания коллекции
$.extend({
...
deleteLittleCart: function(path, shop_item_id){
...
},
и добавлем сюда следующий код, перед закрыывающей фигурной скобкой:
$('#incart_'+ shop_item_id).addClass('hidden');
$('#cart_'+ shop_item_id).removeClass('hidden');
Если вы используете библиотеку Bootstrap 5 и выше, то замените hidden на d-none.
Далее идём в XSL-шаблон вывода карточек товара. Это может быть XSL-шаблон МагазинКаталогТоваров, либо отдельный шаблон для карточек и заменяем кнопку "В корзину" на следующие:
<a href="{/shop/url}cart/" id="incart_{@id}" class="incart hidden">
<xsl:if test="@id = /shop/items_in_cart//shop_item/@id">
<xsl:attribute name="class">incart</xsl:attribute>
</xsl:if>
<span class="icon"><i class="fa fa-shopping-cart"></i></span> <span class="button_caption">Оформить заказ</span>
</a>
<a onclick="return $.bootstrapAddIntoCart('{/shop/url}cart/', {@id}, 1)" data-itemId="{@id}" id="cart_{@id}">
<xsl:if test="@id = /shop/items_in_cart//shop_item/@id">
<xsl:attribute name="class">hidden</xsl:attribute>
</xsl:if>
<span class="icon"><i class="fa fa-shopping-basket"></i></span> <span class="button_caption">В корзину</span>
</a>
Из кода видно, что делается проверка на наличие товара в корзине и если товар в корзине, то меняется класс у кнопок. Одна скрывается, другая показывается.
Класс hidden можно заменить на d-none, если вы используете библиотеку Bootstrap 5 версии и выше. Чтобы проверка работала, в ТДС "Интернет Магазин" должно быть прописано:
->cart(TRUE)
Теперь у вас, при добавлении товара в корзину, вместо кнопки "В корзину" будет показываться кнопка "Оформить заказ" с ссылкой на корзину
