У меня есть меню, которое генерируется динамически из базы данных.Теперь я хочу выделить текущую страницу в пункте меню, но когда я это сделаю, все мои текущие пункты меню внезапно исчезнут.Не понимаю, почему?
Заметил, что при использовании $this->uri->segment(1)
исчезло мое меню
Кто-нибудь знает, как заставить это работать?
В моем файле просмотра:
<div id="menu">
<ul>
<?php foreach ($tabMenu as $item) : ?>
<?php echo buildListItem($item); ?>
<?php endforeach; ?>
</ul>
</div>
В моем помощнике:
function buildListItem($item) {
$urlItemName = url_title($item->name, 'dash', TRUE);
$urlCatID = ($item->cat_id);
$url = base_url() . $urlItemName. "/". $urlCatID;
// item name is blog, add target into it
if ($urlItemName == 'blog') {
$blog = "http://www.tumblr.com";
return "<li><a href='" . $blog . "' target='_blank'>" . strtoupper($item->name) . "</a></li>";
} else {
return "<li class='". isSelected($item). "'><a href='" . $url . "'>" . strtoupper($item->name) . "</a></li>";
}
}
function isSelected($item) {
$urlItemName = url_title($item->name, 'dash', TRUE);
if ($this->uri->segment(1) === $urlItemName) {
return 'menu_active';
} else {
return '';
}
}