Skip to main content

Интеграция с Magento

Установка корзины

Зайдите в админку вашего сайта на Magento. На панели управления выберите "Система", и в выпадающем списке выберите "Конфигурация".

image-1603772933609.png

В Конфигурации выбрать Дизайн.

image-1603772990559.png

В разделе Дизайн выбрать HTML заголовок, после чего выбрать Разнообразные скрипты.

image-1603773031936.png

image-1603773068066.png

Вставить в поле следующее:

<!-- Kak2c checkout -->
<script src="https://static.kak2c.ru/v2/kak2c.checkout.js"></script>
<link rel="stylesheet" href="https://static.kak2c.ru/v2/kak2c.checkout.css">

<script>
  document.addEventListener("DOMContentLoaded", function (){
	var kak2c_domain = "shop4547084"; //	Укажите здесь Ваш идентификатор магазина
    
    //Собственно инициализация виджета корзины
    kaktusWidget({
      	domain: kak2c_domain,
      
      	//Необязательные коллбэки. Назначение похоже на события выше.
      	basketClickCallback: function(){
          //Вызывается при открытии попапа корзины
        },

        newOrderCreatedCallback: function(){
          //Вызывается при создании заказа
        }
    });
	
	var add2cartButtons = document.getElementsByClassName("addtocart");
	for (var i = 0; i < add2cartButtons.length; i++) {
		//add2cartButtons[i].addEventListener('click', add2cart, false);
		addSomeEvent('click', add2cartButtons[i], add2cart);
	}
	
	var add2cartButtons2 = document.getElementsByClassName("btn-cart");
	for (var i = 0; i < add2cartButtons2.length; i++) {
		//add2cartButtons2[i].addEventListener('click', add2cart2, false);
		addSomeEvent('click', add2cartButtons2[i], add2cart2);
	}
    	
  });
  
function getProductExtId(onClickString) {
	var startIndex = onClickString.indexOf('/product/') + 9;
	var endIndex = onClickString.indexOf('/form_');
	return onClickString.substring(startIndex, endIndex);
}

function addSomeEvent(evnt, elem, func) {
   if (elem.addEventListener)  // W3C DOM
      elem.addEventListener(evnt,func,false);
   else if (elem.attachEvent) { // IE DOM
      elem.attachEvent("on"+evnt, func);
   }
   else { // No much to do
      elem["on"+evnt] = func;
   }
}

var add2cart = function() {
    var attribute = this.getAttribute('onclick');
	var extId = getProductExtId(attribute);
	console.log(extId);
	kaktusWidget.changeCart({
		variantExtId: extId,
		count: 1, 
		operation: 'ADD'
	});
};
var add2cart2 = function() {
	var offerFormAction = document.getElementById("product_addtocart_form").getAttribute('action');
	var qtyVal = parseInt(document.getElementById("qty").value);
	var extId = getProductExtId(offerFormAction);
	console.log(extId);
	kaktusWidget.changeCart({
		variantExtId: extId,
		count: qtyVal, 
		operation: 'ADD'
	});
	
}; 

//# sourceURL=kak2cInit.js
</script>
<!-- /Kak2c checkout -->

Внимание! В shopXXXXXXX вместо XXXXXXX нужно указать ваш идентификатор магазина в ЛК Кактус в разделе Настройки -- Общие.

image-1603774130751.png

Связка товаров

В админке сайта зайти в Каталог и найти товары. Значения ИД из Magento скопировать в поле Внешний ID в ЛК Кактус.

image-1603773342352.png

Внешний ID можно найти непосредственно в карточке товара в ЛК Кактус.

image-1603773705473.png