【发布时间】:2011-09-01 20:25:01
【问题描述】:
示例:
菜单 1
菜单项 1.1
菜单项 1.2
菜单项 1.2.1
菜单项 2
菜单项 3
我现在有:
<?php $active = JFactory::getApplication()->getMenu()->getActive();?>
<body class="<?php echo $active->alias; ?> ">
所以我从活动菜单项加载正文类。我希望保持不变。我需要的是在例如 menuitem 1 处于活动状态时隐藏某些菜单项。所以当这种情况发生时,我需要为 menuitem 2 分配一个类。
这样,当我向下导航 1.1 时,它会隐藏菜单项。
找到了解决方案:
<?php
$menu =& JSite::getMenu();
$active = $menu->getActive();
$class = extractpath($active->route);
function extractpath($string){
preg_match('/^[a-zA-Z0-9\-_]+/',$string,$m);
return $m[0];
}
?>
<body<?php if ($class) echo ' class="' . $class . '"'; ?>>
【问题讨论】: