从前端覆盖Joomla Menu Itemid参数

时间:2011-12-22 16:45:01

标签: joomla joomla1.5 joomla1.7

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

这会从特定的Joomla菜单项

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

其中170是菜单项id 170的参数,现在 有一个叫做已发布的设置,我想要实现的是向访问者显示菜单项只能通过全局设置$ menus - > _items [170] - >当用户登录时发布为0而不是1

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

f我们可以让它工作,而代码片段可能就像

  

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

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

谢谢!

1 个答案:

答案 0 :(得分:0)

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