I’m making a custom module for PyroCMS, and I want to get the section menu working with regard to applying the current class. The CMS php, which I don’t want to change looks like this:
<li class="<?php if ($name === $active_section) echo 'current' ?>">
When I’m viewing /admin/courses/ this is correct, and the first navigation element has the class, current.

$name is taken from the language file, as set up in details.php.
$active_section is taken from the view, and is equal to
$this->_ci_cached_vars[‘active_section’]
However when I view /admin/courses/chapters/, ‘courses’ is still determined by the system to be the current section, so the navigation is confusing.
What I need is a way of changing the value of $active_session in the view acording to which function of the controller (index, chapters or pages) is being used.
I’ve tried changing the value of $this->_ci_cached_vars[‘active_section’] in each controller function, but that doesn’t work. Any ideas?
I’m sure there’s something basic I’m missing completely.
Got it.
I’m using multiple methods in one controller, and the ‘protected $section = ‘courses’; line, which happens before the index method, was setting the section for everything.
It couldn’t be set a second time within another method, but there is a way to define a section within a method.
$this->template->active_section = ‘section’;
Starting my method as follows gave me what I wanted.