Ну во первых в layout.tpl Вашей темы нужно добавить скрипт jquery.ajaxpagination.js
{addjs file="jquery.ajaxpagination.js"}
Потом убедиться что у Вас есть js файл в папке /templates/Ваша тема/resourse/js/jquery.ajaxpagination.js
Если нет, то переносим из /templates/.default/resourse/js/jquery.ajaxpagination.js
Теперь дело за инициализацией в шаблоне. Открываем list_products.tpl в Вашей теме.
Убираем строку с пагинацией.
{include file="%THEME%/paginator.tpl"}
Вместо неё создаёт кнопку "Показать ещё" с настройками:
{if $paginator->total_pages > $paginator->page}
<div class="wrapper-space"></div>
<div data-pagination-options='{ "appendElement":".products-list" , "clickOnScroll":true }' href="{$router->getUrl('catalog-front-listproducts', ['query'=>$query, 'category'=>$category.alias,'p' => $paginator->page+1])}" data-href="{$router->getUrl('catalog-front-listproducts', ['query'=>$query, 'category'=>$category.alias,'p' => $paginator->page+1])}" class="more onemoreEmpty margin-top ajaxPaginator">
<div class="icon"></div>
еще
</div>
{/if}
Ключевым здесь является класс ajaxPaginator. Т.к. именно по нему отрабатывает пагин.
У самой кнопки есть настройки
"appendElement":".products-list" , "clickOnScroll":true
где appendElement - это класс который будет заменять внутреннее содержимое подгруженной страницы. Т.к. возвращается вся страница, а заменена будет только 1 часть. Например
<div class="products-list">
//Здесь элементы каталога товаров.
</div>
//А здесь пагинация кнопкой
clickOnScroll - использовать автопрокрутку или нет (true/false).