Битрикс аякс добавление в корзину

В данной статье рассмотрим основные методы по работе с корзиной.

Как при помощи API Битрикса добавить, обновить, удалить товар в корзине

Перейдем сразу к коду, а потом подробнее рассмотрим что и зачем делается:

<?require($_SERVER["DOCUMENT_ROOT"] . "/bitrix/modules/main/include/prolog_before.php");?>

<?
if (CModule::IncludeModule("catalog") && CModule::IncludeModule("sale")) {

	// ADD TO CART
	if ($_POST['add'] == 'Y' && $_POST['id']) {
		$propArr = array();
		$count = ($_POST['count']) ? $_POST['count'] : 1;

		Add2BasketByProductID(
			$_POST['id'],
			$count,
			$propArr
		);
	}

	// UPDATE QUANTITY
	if ($_POST['update'] == 'Y' && $_POST['id'] && $_POST['count']) {
		$arFields = array(
			"QUANTITY" => $_POST['count'],
		);
		CSaleBasket::Update($_POST['id'], $arFields);
	}

	// DELETE PRODUCT
	if ($_POST['delete'] == 'Y' && $_POST['id']) {
		CSaleBasket::Delete($_POST['id']);
	}

}
?>

При помощи POST запроса нам необходимо передать ID товара, только не ошибитесь — ID товара в корзине и в инфоблоке это две разные вещи. Также, мы передаем количество для обновления и добавления в корзину.

CSaleBasket::Update — метод обновления товара в корзине.
CSaleBasket::Delete — метод для удаления товара.
Add2BasketByProductID — при помощи данной функции мы добавляем товар в корзину пользователя.

В проверках присутствует переменная, которая и определяет действие. После успешно выполненного события нам нужно обновить HTML с актуальными данными о добавленных товарах. При помощи данных методов и функций достигается эффект аякс корзины в битриксе.

Если на вашем сайте необходимо настроить добавление в корзину при помощи AJAX, обращайтесь за помощью

автор: Dmitriy

Занимаюсь веб-разработкой с 2011 года. Посмотреть некоторые из моих работ, а также узнать чуть больше обо мне, вы можете на forwww.ru.

Какие услуги предоставляю:
- Создание сайтов, шаблонов и компонентов на 1С-Битрикс;
- Разработка функционала с нуля и доработка кода на уже созданных проектах;
- Адаптивная вёрстка макетов и натяжка на Битрикс;
- Парсинг файлов и выгрузка на сайт (форматы - CSV, XML, XLSX, JSON)
- Интеграции со сторонними сервисами по API;
- Многоязычные версии и многое другое.

Если у вас остались вопросы, свяжитесь со мной любым удобным для вас способом или оставьте комментарий внизу.
E-mail: dmitriyribka@gmail.com
Skype: cinemacreaterus

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *