我在其中一个自定义模块中看到了这个$ params-> get('moduleclass_sfx'),发现它也是核心代码的一部分。想知道这是什么?无法在谷歌搜索中找到任何Joomla文档的链接,因此不确定这究竟是什么?
答案 0 :(得分:2)
模块类后缀是用于向模块添加自定义类的参数。
例如,假设您有一个带有左侧边栏的模板,在该侧边栏中您有两个不同的模块。侧栏中模块的默认背景颜色为灰色。但是,您希望第一个模块背景颜色为红色。这是模块类后缀派上用场的时候。
默认模块如下:
<强> HTML:强>
<div class="module">
<强>的CSS:强>
.module { background: grey; }
如果您插入模块类后缀,例如“ test ”,则会产生以下结果:
<div class="module test">
对此的css将如下所示:
.module.test { background: red; }
模板提供程序使用模块类后缀为模块提供更多各种样式。看一下this template,在顶部菜单上,转到“功能”,然后“ Layouts ”以获得一个很好的例子。
希望这有帮助。
答案 1 :(得分:0)
我没有使用过Joomla!在一段时间内,但据我记得moduleclass_sfx
本身并不特别,它只是您可以在管理面板中修改的模块参数之一。
通常它是一个可以添加到模块的CSS类名(用于前端视图),以便进一步个性化。
因此,表达式$params->get('moduleclass_sfx')
只需要(通常在Controller中)所有模块中的“moduleclass_sfx”索引(即,您插入CSS类的模块的管理面板输入的名称)参数($params
)。
我想高出现是因为它是命名输入字段的标准方法(毕竟它是一个有用且常见的功能,允许更多的自定义),这就是为什么你在自定义模块和核心模块中找到它的原因,但我认为不重要:我的意思是,在您的自定义模块中,您可以将其命名为“css_suffix”,使用$params->get('css_suffix')
调用它并获得相同的结果。