Вы можете сделать следующее
Добавьте это в app_helper.php, если вам это нужно на нескольких страницах. Вы передаете эту функцию контроллеру, и действие, которое вы хотите проверить, с которым вы хотите сравнить. Функция сравнивает ее с текущей страницей и возвращает true, если они совпадают.
function isActive($controller, $actions = array())
{
foreach ($actions as $action)
{
if ($controller == $this->params['controller'] && $action == $this->params['action'])
{
return true;
}
}
return false;
}
А затем сгенерируйте ваши ссылки так:
<ul class="left">
<li <?php if($html->isActive('controller_name', array('index'))) { echo 'class="active"'; } ?>><?php echo $html->link('Index', '/index'); ?></li>
<li <?php if($html->isActive('controller_name', array('new'))) { echo 'class="active"'; } ?>><?php echo $html->link('New', '/new'); ?></li>
<li <?php if($html->isActive('controller_name', array('random'))) { echo 'class="active"'; } ?>><?php echo $html->link('Random', '/random'); ?></li>
<li <?php if($html->isActive('controller_name', array('submit'))) { echo 'class="active"'; } ?>><?php echo $html->link('Submit', '/submit'); ?></li>
</ul>
Если функция возвращает true, ссылка будет иметь класс = "активный". Адаптируйте его под свои нужды.