Интересные статьи

После решения задачи, хочется рассказать об этом

Компонент битрикс добавить в избранное

Мне прилетела задача - сделать добавление товаров в избранное на сайте под управлением 1с-битрикс. Было несколько вариантов решения данной задачи, но я остановился на написании собственного компонента. Вариант первый - можно сделать, добавляя товары в раздел отложенные в корзине, что думаю самый отличный вариант, т.к. потом можно легко переложить товар в корзину. Но у меня на сайте не предусмотрен функционал корзины и оформления заказа. Вариант второй - добавлять товар в сравнение, где выводится полная таблица для сравнения. Но данный функционал доступен тольуо для компонента catalog. Третий вариант - написать свой функционал добавления в избранное. Я решил пойти третей дорогой и написать компонент, для возможности его использования и в компоненте news. Со временем буду его дополнять и развивать.

Компонент pashkof.project:favorite.elements

$APPLICATION->IncludeComponent(
	"pashkof.project:favorite.elements",
	"",
	Array(
		"FILTER_NAME" => $arParams["FILTER_NAME"],
	),
	false
);

Логика работы компонента битрикс, добавить в избранное, заключается в добавлении/удаления id товаров в сериализированный массив и в/из куки пользователя. А далее при переходе в раздел избранное, скармливать этот массив компоненту bitrix:catalog.section через фильтр $arrFilter Товары добавлются в избранное по ajax без перезагрузки старницы

Для запуска компонента необходимо расположить его например в header.php Он выводит ссылку на раздел избранное и количество добавленных товаров. Во входной параметр необходимо указать "FILTER_NAME", такой же как в компоненте bitrix:catalog.section Также в теле шаблона компонента bitrix:catalog.section расположить ссылку, по которой будет происходить добавление или удаление из избранного

<a href="" class="favorite" itemid="" act="add"></a>
Cкачать компонент pashkof.project:favorite.elements в формате zip