【问题标题】:How to add an active class to a Joomla K2 content module如何将活动类添加到 Joomla K2 内容模块
【发布时间】:2012-07-27 19:16:14
【问题描述】:

我正在尝试将一个类添加到 Joomla K2 内容模块中的活动 <li> 以创建一个动态创建的菜单。到目前为止,我得到了:

<li class="<?php if ($item->id == $active_id) echo 'active';?> hello">

我在那里打了个招呼,以检查模板覆盖是否正常工作,是的。

我显然不懂 php,我认为这对于了解 Joomla K2 和 php 的人来说是一个简单的问题? ;)

【问题讨论】:

    标签: php joomla2.5 joomla-k2


    【解决方案1】:

    我遇到了同样的问题并想出了这个解决方案(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 专家,但这很适合我的模板。

    【讨论】:

    • 非常好,感谢 Erik,非常感谢您的解决方案。我还没有尝试过,但会假设它有效。如果我找到其他方法,我会告诉你。再次感谢:)
    【解决方案2】:

    上面的代码在 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';
            ?>">
    

    【讨论】:

      猜你喜欢
      • 2013-01-26
      • 2014-10-14
      • 2014-05-02
      • 2011-09-05
      • 2023-03-27
      • 2016-09-11
      • 2012-07-16
      • 2011-12-21
      • 2012-07-03
      相关资源
      最近更新 更多