Yii2 → Активировать текущую вкладку

Задача: сделать активной нужную вкладку nav-tabs в зависимости от текущего контроллера.

Пример реализации без виджета

<?php
// Делаем активной нужную вкладку
$activeTab = function ($controller) {
    return $controller === $this->context->getUniqueId() ? 'active' : '';
}; ?>
<ul class="nav nav-tabs">    
    <li class="<?=$activeTab('search')?>">
        <a href="#search" data-toggle="tab">Поиск</a>
    </li>
    <li class="<?=$activeTab('catalog')?>">
        <a href="#catalog" data-toggle="tab">Каталог</a>
    </li>    
</ul>

и через виджет

$user = Yii::$app->getUser();
$checkController = function ($controller) {
   return $controller === $this->context->getUniqueId();
};
echo Menu::widget([
    'items' => [ 
     [
        'label' => 'Поиск',
        'url' => ['/search/index'],
        'active' => $checkController('search')
     ],
     [
        'label' => 'Каталог',
        'url' => ['/catalog/index'],
        // можно также скрыть вкладку при необходимости
        'visible' => $user->can('catalog.index'),  
        'active' => $checkController('catalog')
     ],
   ]
]);

Смотрите также как выделить активные пункты меню.