1

我正在为 PyroCMS 制作一个自定义模块,我想让部分菜单与应用当前类有关。我不想更改的 CMS php 如下所示:

<li class="<?php if ($name === $active_section) echo 'current' ?>">

当我查看 /admin/courses/ 这是正确的,并且第一个导航元素具有类,当前。

在此处输入图像描述

$name 取自语言文件,在 details.php 中设置。$active_section 取自视图,等于

$this->_ci_cached_vars['active_section']

但是,当我查看 /admin/courses/chapters/ 时,系统仍将“课程”确定为当前部分,因此导航混乱。

我需要的是一种根据正在使用的控制器(索引、章节或页面)的功能来更改视图中 $active_session 值的方法。

我尝试在每个控制器函数中更改 $this->_ci_cached_vars['active_section'] 的值,但这不起作用。有任何想法吗?

我确定我完全缺少一些基本的东西。

4

1 回答 1

1

知道了。我在一个控制器中使用多种方法,并且 'protected $section = 'courses'; 发生在 index 方法之前的行正在为所有内容设置部分。它不能在另一个方法中再次设置,但是有一种方法可以在方法中定义一个部分。

$this->template->active_section = 'section'; 如下开始我的方法给了我想要的东西。

public function chapters(){

        //Set active section
        $this->template->active_section = 'chapters';
 ...

}
于 2012-07-11T21:01:33.770 回答