Чтобы заставить работать динамическую маршрутизацию, я делаю следующее.
CMS записывает файл в каталог конфигурации codeigniter, назовем его dynamic_route.php
Написанный файл является аналогом файла конфигурации normale route.php.
An пишет что-то вроде
$route['(\w{2})/(\w{2})/URL_PART_FROM_CMS/?(.)?'] = 'CONTROLLER_CHOSEN_IN_CMS';
Этот файл включен в файл routs.php
.
$route['default_controller'] = "content";
$route['404_override'] = '';
// include file
include('dynamic_routes.php');
Каждый раз, когда cms меняется. динамический файл переписан. Это делает его очень динамичным без какого-либо влияния на производительность.