【问题标题】:Override Joomla Menu Itemid parameter from frontend从前端覆盖 Joomla Menu Itemid 参数
【发布时间】:2011-12-22 16:45:01
【问题描述】:

我们知道 Joomla 1.6 及更高版本具有访问级别组设置,但这个小技巧可以帮助 1.5 及更高版本的每个人

这里输出特定 Joomla 菜单项的参数

$menus = &JSite::getMenu();
print_r($menus ->_items[170]);

现在 170 是菜单项 id 170 的参数 有一个名为 published 的设置,我想要实现的是仅在用户登录时通过全局设置 $menus ->_items[170]->published 为 0 而不是 1 来向访问者显示菜单项

但是更改该数组值很难,所以如果可以,请检查是否可以使用提供的信息将值输出从 1 更改为 0。

如果我们可以让它工作,而不是代码 sn-p 可能类似于

if ( !$user->id ) { $menus = &JSite::getMenu(); $menus ->_items[170]->set('已发布',0); }

但是 set() 不适用于菜单项 ID

谢谢!

【问题讨论】:

    标签: joomla joomla1.5 joomla1.7


    【解决方案1】:

    为什么不直接设置菜单项的访问权限来注册在菜单参数中呢?然后该项目仅在用户登录时显示。这是 Joomla 中的内置行为。

    【讨论】:

    • 我说的是公开可见的项目,只是没有注册或特殊
    • 从代码的外观来看,除非用户登录,否则您试图隐藏菜单项,对吗?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2014-07-06
    • 2018-04-06
    • 1970-01-01
    • 1970-01-01
    • 2012-08-04
    • 2019-06-30
    • 1970-01-01
    相关资源
    最近更新 更多