На самом деле это довольно просто сделать если немного знать mod_rewrite
Обработака адреса исключительно для http://my-site.com/catalog/ + возможные гетпараметры
Напомню, что для урлов типа http://my-site.com/catalog/televizor/samsung/ - ничего писать не нужно, так как это уже не путь к системным файлам. Это не директория и не файл.
Итак, собственно весь код (только поменяйте 147 на айди вашей категории):
RewriteCond %{REQUEST_URI} ^/catalog/?$ - если это запрос http://my-site.com/catalog/
RewriteCond %{QUERY_STRING} ^(.*)$ - забираем все гетпараметры
RewriteRule ^(.*)$ index.php?_route_=product/category&path=147(ваш айди категории c урл catalog)&%1 [L]
-%1 это все возможные гетпараметры из правила RewriteCond %{QUERY_STRING}
Здесь стоит уточнить, что вы должны использовать стандартный роут опенкарта для отображения какой либо категории.
1-e - отключите ЧПУ и посмотрите на полный адрес по которому отображается ваша страница категории. Копируйте этот адрес и добавляете его в RewriteRule.
Если это просто список всех категорий, то будет что-то типа
index.php?_route_=product/category/
если вы хотите чтобы под catalog/ отобрыжалась категория "одежда", то всего лишь добавляете айдиху этой категории + клеите туда доп. гет параметры.
index.php?_route_=product/category&path=147(это моя айдиха категории одежды)
Это прекрасно работает, и куда проще тех костылей и манипуляций с файловой системой как продлогают некоторые.