Здравствуйте! Недавно столкнулся с проблемой реализации подписки на новинки нужного раздела товаров. Стандартно - пользователю можно предоставить подписку только на товары (новодобавленные) из всего инфоблока - что не есть хорошо в случае когда инфоблок зовут "Техника" а разделы в нем - "Мобилки" и "Калькуляторы". Что бы дать пользователю выбор, я поступил следующим образом:
1) Скопировал стандартный компонент рассылки в папку /bitrix/components/
subscribe.news 2) В шаблоне рассылки поменял путь к компоненту
с
<?$SUBSCRIBE_TEMPLATE_RESULT = $APPLICATION->IncludeComponent(
"bitrix:subscribe.news"...
|
на
<?$SUBSCRIBE_TEMPLATE_RESULT = $APPLICATION->IncludeComponent(
"subscribe.news"...
|
3) В файле .parameters.php (скопированого компонента) в элементе PARAMETERS (который находится в массиве $arComponentParameters) дописал такой элемент
"SECTION_ID" => array(
"NAME" => GetMessage("CP_BSN_SORT_SECTION_ID"),
"TYPE" => "LIST",
),
|
4) Потом в файле component.php сузил фильтр $arFilter, написав
$arFilter['SECTION_ID'] = $arParams["SECTION_ID"];
|
Все, теперь комонент в шаблоне подписки можно вызывать так:
<?$SUBSCRIBE_TEMPLATE_RESULT = $APPLICATION->IncludeComponent(
"subscribe.news",
"",
Array(
"SITE_ID" => "идентификатор сайта",
"IBLOCK_TYPE" => "тип инфоблока",
"ID" => "id инфоблока",
"SECTION_ID" => "id раздела",
"SORT_BY" => "ACTIVE_FROM",
"SORT_ORDER" => "DESC",
),
null,
array(
"HIDE_ICONS" => "Y",
)
);?>
|
Файл .description.php править необходимости не было, по скольку с компонентом работать в визуальном редакторе не прийдется.