Здравствуйте! Помогите, пожалуйста с пагинатором компонента bitrix:catalog.section и с ajax-подгрузкой по ссылке "Ещё товары". Надо чтобы находясь на странице при нажатии на кнопку "Ещё товары" показывались следующие товары и на пагинаторе подсвечивалась следующая страница. В параметрах компонента можно это исправить? Или там нужно вмешательство в код? JS или php - не знаю. Подскажите, может кто делал?
В принципе мне подсказали:
"в новых шаблонах это есть. посмотреть можно в /bitrix/components/bitrix/catalog.section/templates/.default. там в шаблон вставили пометки по типу <!-- items container -->, а в component_epilog.php проверка на ajax-запрос и отдача разметки в json".
Но что-то я не понял куда дальше двигаться.
Вот код component_epilog.php:
В принципе мне подсказали:
"в новых шаблонах это есть. посмотреть можно в /bitrix/components/bitrix/catalog.section/templates/.default. там в шаблон вставили пометки по типу <!-- items container -->, а в component_epilog.php проверка на ajax-запрос и отдача разметки в json".
Но что-то я не понял куда дальше двигаться.
Вот код component_epilog.php:
| Код |
|---|
$request = \Bitrix\Main\Context::getCurrent()->getRequest();
if ($request->isAjaxRequest() && ($request->get('action') === 'showMore' || $request->get('action') === 'deferredLoad'))
{
$content = ob_get_contents();
ob_end_clean();
list(, $itemsContainer) = explode('<!-- items-container -->', $content);
list(, $paginationContainer) = explode('<!-- pagination-container -->', $content);
list(, $epilogue) = explode('<!-- component-end -->', $content);
if ($arParams['AJAX_MODE'] === 'Y')
{
$component->prepareLinks($paginationContainer);
}
$component::sendJsonAnswer(array(
'items' => $itemsContainer,
'pagination' => $paginationContainer,
'epilogue' => $epilogue,
));
}
|