我正在尝试将一个类添加到<li>
Joomla K2 内容模块中的活动中,以制作动态创建的菜单。到目前为止,我得到了:
<li class="<?php if ($item->id == $active_id) echo 'active';?> hello">
我在那里打了个招呼,以检查模板覆盖是否正常工作,是的。
我显然不了解 php,我认为这对于了解 Joomla K2 和 php 的人来说是一个简单的问题?;)
我遇到了同样的问题并想出了这个解决方案(Joomla 3.0.3 & K2 2.6.5)
<li class="<?php
$active_sub = substr(($app->input->getCmd('task', '')), 0, 3);
if ($item->id == $active_sub) echo 'active';
?>" >
'task' 在主 index.php 中定义,并返回子菜单 itemid 以及菜单项名称,使用 substr 获取与 K2 模块中的 $item->id 对应的前 3 个字符。此解决方案将一直有效,直到您在模块中获得超过 999 个菜单项。
我也不是 PHP 专家,但这适用于我的模板。
上面的代码在 Joomla 3.4.1 和 K2 2.6.8 中对我不起作用。这是一个适用于任何版本(J1.5/J2.5/3.0 和任何版本的 K2)的解决方案。
<li class="<?php
$active_sub = intval(JRequest::getCmd('id'));
if ($item->id == $active_sub) echo 'active';
?>">