2013-10-12 52 views
1

我只是在的Joomla 3意义Mod_menu覆盖

创建自定义mod_menu我不知道是否有人会这么好心,并解释这个代码块是指,因为我无法找到该参数的任何引用$ item-> params-> get('aliasoptions)这段代码实际上对菜单项有什么作用? - (37行 - 代码如default.php采取TMPL文件夹从mod_menu)

$aliasToId = $item->params->get('aliasoptions'); 
    if (count($path) > 0 && $aliasToId == $path[count($path) - 1]) 
    { 
     $class .= ' active'; 
    } 
    elseif (in_array($aliasToId, $path)) 
    { 
     $class .= ' alias-parent-active'; 
    } 

任何解释到,这将是最有帮助的,如果它的实际需要我想知道?

回答

0

那是对应的函数从helper.php

case 'alias': 
// If this is an alias use the item id stored in the parameters to make the link. 
$item->flink = 'index.php?Itemid=' . $item->params->get('aliasoptions'); 
break; 

所以,如果你看一下在如default.php的功能,你会看到这段代码:

foreach ($list as $i => &$item) : 
$class = 'item-'.$item->id; 

,并用以下如果子句和那之后你要求的代码。

那么它基本上(在我的理解):

使用在itemparameters定义(基本上它只是项目编号XD)项目的ID如果链接仅仅是另一个菜单项的别名。没有它,Joomla不应该能够设置正确的活动菜单链接。

您可以在菜单项目的类型选择中选择这些设置菜单项别名:“系统链接 - >菜单项别名”,创建或编辑菜单项时)

我希望这有助于^^

+0

嗨,Django,谢谢你们的支持,我对这个参数看起来并不够努力,这个参数在菜单项类型选择中是这样的:“系统链接 - >菜单项别名”现在显而易见,因为它只有在选中时才变为活动状态为什么我在菜单上做了var_dump时看不到它。 - 再次感谢。 – W9914420

+0

不客气;) – Django