Вы можете использовать именованные параметры , например:
example.com/controller/action/param1:value/param2:value
В этом наборе вы найдете 'param1' и 'param2' в вашем контроллере в $ this-> passArgs.
Вы также можете определить собственный маршрут:
Router::connect('/news/:date/:article_name/:id',
array('controller'=>'articles', 'action'=>'view'),
array('pass' => array('id'), 'id'=>'[\d]+')
);
В этом случае представление действия в ArticlesController будет вызываться с «id» в качестве аргумента (и маршрут будет совпадать только в том случае, если id пройдет проверку только на наличие цифр). Затем вы также можете получить доступ к 'date' и 'article_name' в переменной $ this-> params.