Про рекурсии нет вопросов, это и так понятно, изменять код самого магазина относится к кастомизации без возможности дальнейшего клонирования, это вот к этому:
Переписал формирование категорий и товаров, изменил таблицу с алиасами, думаем пока.Относительно формирования товаров - используется seo_tool из поставки магазина, очивидно, что правка кода отвечающего ЧПУ не приведёт к правке sitemap, остальные модели смысла нет использовать, потому, что там везде запросы вида "SELECT * FROM" в то время когда требуется всего одно поле в результирующем наборе (очевидное зло и всё те же клещи).
Заглянул в контроллер и модель категорий - там решение то же самое, та же самая рекурсия, предполагаю что на 180 категориях и 18 тыс товаров может быть всё не очень хорошо. Про решение никто не говорил и почему оно не попало в релиз об этом история умалчивает.
При текущей структуре таблицы единственный верный вариант это хранимая процедура с той же рекурсией, но она себя то же в конечном счёте не оправдает.
Сейчас 1000 позиций и 22 категории, ничего сверх естественного нет, будет рост до 18тыс, тогда уже будем смотреть.
Ну и любые доработки относительно изменения основного кода упираются в затратную часть, здесь даже нечего добавить, любой проект упирается в бюджет, если опубликуете свои изменения относительно оптимизации алгоритмов и структуры БД будем рады.
Речь в конечном итоге идёт о модуле, а не о частной кастомизации (к которой придётся в конечном итоге прийти путём изменения структуры БД и кода или сменой движка)...