OctoberCMS registerNavigation 当前活动子菜单的错误状态 link

OctoberCMS registerNavigation wrong status of current active submenu link

我一直在使用 OctoberCMS(Builder Plugin) 创建不同的插件,效果很好。

我有一个名为 Partners 的插件,在 Plugin.php 文件代码中,我有以下代码。

Plugin.php代码

public function registerNavigation()
    {
        return [
            'modules' => [
                'label'       => 'Modules',
                'url'         => Backend::url('technobrave/partners/partners'),
                'icon'        => 'icon-bars',
                'permissions' => ['Technobrave.Partner.*'],

                'sideMenu'    => [
                    'partner' => [
                            'label' => 'Partners',
                            'icon'        => 'icon-thumbs-up',
                            'url'         => Backend::url('technobrave/partners/partners'),
                            'permissions' => ['Technobrave.Partner.*']

                    ],
                    'team' => [
                            'label' => 'Team',
                            'icon'        => 'icon-group',
                            'url'         => Backend::url('technobrave/team/team'),
                            'permissions' => ['Technobrave.Team.*']
                    ]
                ]
            ]
        ];
    }

下面是我的Partners.php控制器文件代码

Partners.php控制器代码

public function __construct()
    {
        parent::__construct();             
        BackendMenu::setContext('Technobrave.Partners', 'modules', 'team');
    }

除了我当前的 active class,一切正常,即使我在 Partners 页面上,它也是仍然选择 "Team" 作为当前菜单 link。下面是浏览器 URL 的屏幕截图,以便更好地理解。

正如您在上面看到的,我在 Partners 页面上仍然显示当前活动 URL 作为 Team 页面。有人可以帮我处理这个吗?

谢谢

PS:添加了 PHP 标签,如果有人标记只是为了获得我需要的帮助,如果有人知道并且曾经使用过此 CMS。

您需要为每个控制器设置菜单上下文。 对于 Partners.php 使用这个:

public function __construct()
{
    parent::__construct();             
    BackendMenu::setContext('Technobrave.Partners', 'modules', 'partner');
}

对于 Team.php 使用这个:

public function __construct()
{
    parent::__construct();             
    BackendMenu::setContext('Technobrave.Partners', 'modules', 'team');
}