Задача: Сделать возврат из корзины в каталог продукции.
Логика: По клику по кнопке «продолжить покупку» осуществляется переход на страницу раздела продукции, к которому принадлежит последний добавленный в корзину товар.
Реализация:
1) В шаблоне компонента корзины, к примеру store.sale.basket.basket, в файле result_modifier.php, если не существует то создаем, добавляем следующий код:
<?
//если есть элементы в корзине
if(!empty($arResult["ITEMS"]["AnDelCanBuy"] )):
//создаем массив с порядковым номером товаров в корзине и соответствующим им ID в каталоге
foreach($arResult["ITEMS"]["AnDelCanBuy"] as $arBasketItems)
{
$arBasketItemsID[$arBasketItems['ID']] = $arBasketItems['PRODUCT_ID'];
}
//сортируем товары в полученном массиве по возрастанию порядкового номера
ksort($arBasketItemsID);
//получаем последний товар
$LastElementID = end($arBasketItemsID);
//и определяем URL раздела в котором данный товар находится
$db_old_groups = CIBlockElement::GetElementGroups($LastElementID, true);
if($ar_res = $db_old_groups->GetNext()):
$arResult["BACK_URL"] = $ar_res['SECTION_PAGE_URL'];
endif;
endif;
?>
2) В файле basket_items.php в необходимом месте по дизайну сайта в коде добавляем кнопку по которой будет выполняться переход в каталог:
<input type="button" data-href="<?=$arResult["BACK_URL"]?>" value="<?=GetMessage("SALE_BASKET_BACK" )?>" id="BasketBack" />
3) В этом же файле (basket_items.php) к примеру в конце, добавляем следующий скрипт, что бы кнопка работала как ссылка:
<sc ript>
$(docu ment).ready(f unction (){
$('#BasketBack').live("click", f unction() {
location.href = $(this).attr('data-href');
});
});
</sc ript>
4) И в файле lang/ru/ template.php добавлем следующий код:
$MESS ['SALE_BASKET_BACK'] = "продолжить покупку";
Все!
Логика: По клику по кнопке «продолжить покупку» осуществляется переход на страницу раздела продукции, к которому принадлежит последний добавленный в корзину товар.
Реализация:
1) В шаблоне компонента корзины, к примеру store.sale.basket.basket, в файле result_modifier.php, если не существует то создаем, добавляем следующий код:
<?
//если есть элементы в корзине
if(!empty($arResult["ITEMS"]["AnDelCanBuy"] )):
//создаем массив с порядковым номером товаров в корзине и соответствующим им ID в каталоге
foreach($arResult["ITEMS"]["AnDelCanBuy"] as $arBasketItems)
{
$arBasketItemsID[$arBasketItems['ID']] = $arBasketItems['PRODUCT_ID'];
}
//сортируем товары в полученном массиве по возрастанию порядкового номера
ksort($arBasketItemsID);
//получаем последний товар
$LastElementID = end($arBasketItemsID);
//и определяем URL раздела в котором данный товар находится
$db_old_groups = CIBlockElement::GetElementGroups($LastElementID, true);
if($ar_res = $db_old_groups->GetNext()):
$arResult["BACK_URL"] = $ar_res['SECTION_PAGE_URL'];
endif;
endif;
?>
2) В файле basket_items.php в необходимом месте по дизайну сайта в коде добавляем кнопку по которой будет выполняться переход в каталог:
<input type="button" data-href="<?=$arResult["BACK_URL"]?>" value="<?=GetMessage("SALE_BASKET_BACK" )?>" id="BasketBack" />
3) В этом же файле (basket_items.php) к примеру в конце, добавляем следующий скрипт, что бы кнопка работала как ссылка:
<sc ript>
$(docu ment).ready(f unction (){
$('#BasketBack').live("click", f unction() {
location.href = $(this).attr('data-href');
});
});
</sc ript>
4) И в файле lang/ru/ template.php добавлем следующий код:
$MESS ['SALE_BASKET_BACK'] = "продолжить покупку";
Все!